laojikelly 发表于 2011-11-2 11:31:35

[已解决]@systemdir在64位系统下的疑问。

本帖最后由 laojikelly 于 2011-11-4 16:03 编辑

我编了个脚本,fileinstall到@systemdir下。用64位编译可以正常运行。32位编译了却无法正常解压(不解压)。不知其解。所以通常我都不会用@systemdir。不知大家有没有类似的问题?

laojikelly 发表于 2011-11-2 11:39:13

还是32位编译的对64位系统的c:\windows\system32不太支持?解压到其他地方是毫无问题的。

lixiaolong 发表于 2011-11-2 21:05:19

本帖最后由 lixiaolong 于 2011-11-2 21:06 编辑

帮助文档里的.

在 x64 系统上运行 AutoIt 的 32 位版本
Windows 对一些特殊的系统目录有一个重定向机制:

目 录 @SystemDir
32 位值
@WindowsDir & "\SYSWOW64"

64 位值
@WindowsDir & "\System32"

目 录 @ProgramFilesDir
32 位值
{SystemDrive} & "\Program Files (x86)"

64 位值
{SystemDrive} & "\Program Files"

通过禁用重定向机制,可以访问这些 64 位版本的目录.
DllCall("kernel32.dll", "int", "Wow64DisableWow64FsRedirection", "int", 1)

jsgh1983 发表于 2011-11-3 10:25:49

xiaolong老师好厉害!学习了!

laojikelly 发表于 2011-11-3 15:13:47

回复 3# lixiaolong


    谢谢小龙老师!!!!!!!!您的回答小的无限感激!!!!!!!!!跪拜的表情在哪里。。。

laojikelly 发表于 2011-11-3 15:14:59

目 录 @SystemDir
32 位值
@WindowsDir & "\SYSWOW64"

64 位值
@WindowsDir & "\System32"

上面的目录不是应该调转过来吗?
貌似64位值的才是@WindowsDir & "\SYSWOW64"

lixiaolong 发表于 2011-11-3 15:24:02

回复 6# laojikelly

这个我开始也看糊涂了,多看几遍说明,调试,你就明白了.

asdasdasd 发表于 2011-11-3 16:25:09

没错,有更改的!

laojikelly 发表于 2011-11-4 15:11:27

回复 7# lixiaolong


    太好了。我测试一下吧。

laojikelly 发表于 2011-11-4 15:38:28

回复 7# lixiaolong


    帮助文档里的多少页?我怎没找到呢?

laojikelly 发表于 2011-11-4 16:03:07

回复 3# lixiaolong


    大哥我明白了。msgbox(0,"",@systemdir)分别用32和64编译运行即明白了。无限感激。
页: [1]
查看完整版本: [已解决]@systemdir在64位系统下的疑问。