求助,dllopen,在不同环境下,有些可以打开,有些不行,为什么?【已解决】
本帖最后由 fenhanxue 于 2014-7-23 10:35 编辑代码如下:$temp = DllOpen("AntiVC.dll")
MsgBox(0,"",$temp)
DllClose($temp)
dll 文件为:
上述代码,在我的win7,64位下面,无法打开,MsgBox(0,"",$temp)显示的是-1,既 dllopen 的返回值是 -1(失败)
在虚拟机里(xp,32位),可以正常运行,能正常打开,MsgBox(0,"",$temp) 显示的是1,既 dllopen成功
求助这是什么原因?然后应该怎么做才能在win7 64位下打开? x64的32位重定向问题。其实建议你便以为x64的主程序运行于x64环境,如果实在不能这样做,那就使用API先关闭32位重定向吧。
另外你最好加上请求管理员权限。 回复 2# skyfree
请问是这样么:
#RequireAdmin
#include <WinAPIFiles.au3>
_WinAPI_Wow64EnableWow64FsRedirection(True)
$temp = DllOpen("AntiVC.dll")
MsgBox(0,"",$temp)
DllClose($temp)运行后 msgbox 显示的还是 -1 回复 3# fenhanxue
把Dll路径写全试试 如果是在X64环境下且是在scite中或直接运行脚本,请在脚本前加上#PRE_UseX64=n 回复 1# fenhanxue
哥们你怎么解决的,我的问题跟你的一模一样的,也是打不开这个插件,一直-1呢,求解决方法 回复 6# 逆水风帆
5楼啊,大哥
加
#PRE_UseX64=n
页:
[1]