AutoIt 大悲惨! windows7 64bit 被折腾了n久!!!!! ListView
我这个超级大笨蛋!!!!!!
每次编译 AutoIt 脚本都编译成 x64 版本, 然后写 第三方 32bit 的脚本.
刚开始都没有问题的!
也完全没有意识到 64bit 32bit 的问题!
但是当涉及到:
_GuiCtrlListView_SetItemEx 这类函数,发现怎么都不起作用.
设置 Item Text 只会使那个 Item 的字符变成空白!
我还自作聪明的以为 AutoIt 没有考虑到 跨进程SetText 需要打开目标进程,然后在对方的内存空间复制内容.
为此还深入 ListView.au3 一探究竟,结果发现Autoit 是处理过的,的确是在对方的内存空间复制内容.
然后百思不得其解,
最后,自己写一个vc dll , 让autoit DllCall 解决这个问题.
还好,发现DllCall 无法调用这个 dll , 但是其他系统dll就可以!
突然想到,应该是这个 vc dll 是 32bit 的问题 .
然后把脚本编译成 32bit , 发现可以顺利调用 vc dll
然后,然后!!!!!!!!!!!!!!!!!!!!
发现一切都正常了!!!!!!!!!!
原来就是32bit 的 问题 , 害的我调试了2天! 宝贵的两天!!!!!!
这种低级错误已经有好多次了. 说明!
千万不要怕麻烦,多尝试几个平台!
如果在多个平台上做,就不会有这个问题!
千万不要懒得不搭载平台!
多几台电脑,一起测试!!!!!