rogerabc 发表于 2014-8-22 16:13:40

问个编译的问题. 为啥32位编译EXE后在64位上跑API就不正常了?

本帖最后由 rogerabc 于 2014-8-22 19:33 编辑

问题是这样.功能是获取桌面图标的名称.
为啥32位编译 在W7 64位下跑 API就没法正常获取名称.都是空内容.但是图标数量和坐标还是正常的.就是名称获取API_GUICtrlListView_GetItemText不正常.
如果编译成64位 又正常哦.
不懂那个大大解决这个问题了?或者遇到这个问题了.
#Include <GuiListView.au3>

_DesktopLnkRe()

Func _DesktopLnkRe()
        Local $iCount = 0, $i, $iIname = ''
        Local $hWndManager = WinGetHandle("Program Manager")
        Local $hWndDesktop = ControlGetHandle($hWndManager, "", "")
        $iCount = _GUICtrlListView_GetItemCount($hWndDesktop)
        If $iCount > 0 Then
                For $i = 0 to $iCount - 1
                        $iIname = _GUICtrlListView_GetItemText($hWndDesktop, $i)
                        If $iIname Then MsgBox('', $i+1, $iIname)
                Next
        EndIf
EndFunc

rogerabc 发表于 2014-8-22 22:56:49

自己顶..没人遇到过?

wangms 发表于 2014-9-10 20:57:29

帮你顶学习学习。。。。。。。。。。。
页: [1]
查看完整版本: 问个编译的问题. 为啥32位编译EXE后在64位上跑API就不正常了?