找回密码
 加入
搜索
查看: 2706|回复: 5

请教高手关于在64位Windows Vista操作系统中使用FileCopy出错的问题

[复制链接]
发表于 2009-3-4 14:10:31 | 显示全部楼层 |阅读模式
请教高手关于在64位Windows Vista操作系统中使用FileCopy出错的问题


我的脚本是这样的:
FileCopy(@SystemDir & "\" & "\cscript.exe",@HomeDrive & "\" & "\SampleScripts\",9)
; Copy cscript.exe from \Windows\System32\ to \SampleScripts\

脚本在32bit Windows Vista OS, 32bit Windows 7下可以正常工作。但是在64位Windows Vista OS运行时,实际复制的文件却不是我指定的源文件 \Windows\System32\cscript.exe,
实际复制到目的文件夹中的是从 \Windows\SysWoW64\ 目录过来的cscript.exe! 不同目录下的cscript.exe 版本是不同的, 我需要的是 \Windows\System32\cscript.exe。

于是进行Debug。。。
发现在系统中用DOS Command Copy是可以正常复制出来的:
Copy C:\Windows\System32\cscript.exe C:\SampleScripts\

试验了一下笨办法,直接在脚本中指定文件目录,不用函数:
FileCopy("C:\Windows\System32\cscript.exe","C:\SampleScripts\",9)
; Copy cscript.exe from \Windows\System32\ to \SampleScripts\
但是还是没有改善,居然是从\Windows\SysWoW64\目录下复制出来的,而不是我指定的C:\Windows\System32\cscript.exe!!!


经过检查cscript.exe文件的版本,可以用\Windows\winsxs\amd64_microsoft-windows-scripting_31bf3856ad364e35_6.0.6001.18000_none_a486ee99b8b762b1\cscript.exe来作指定源目录,文件同\Windows\System32\cscript.exe的版本是一样的。
但是这样的脚本也太恐怖了吧:
FileCopy("C:\Windows\winsxs\amd64_microsoft-windows-scripting_31bf3856ad364e35_6.0.6001.18000_none_a486ee99b8b762b1\cscript.exe","C:\WDTF\SampleScripts\",9)
; Copy cscript.exe from C:\Windows\winsxs\amd64_microsoft-windows-scripting_31bf3856ad364e35_6.0.6001.18000_none_a486ee99b8b762b1\ to C:\SampleScripts\


有没有高手对在Vista 64bit OS下的脚本有研究,给个意见看,我什么地方的参数要注意修改啊?
 楼主| 发表于 2009-3-7 18:00:15 | 显示全部楼层

? 没有人可以解决么?

? 没有人可以解决么?
 楼主| 发表于 2009-3-20 08:50:02 | 显示全部楼层

Anybody here?
发表于 2009-3-30 13:32:51 | 显示全部楼层
本帖最后由 小兵 于 2021-4-7 11:28 编辑

调用cmd或参考6楼方法
发表于 2009-3-30 13:40:39 | 显示全部楼层
没用到64位的OS,无法测试。
发表于 2009-4-1 10:42:08 | 显示全部楼层
看帮助文件的 Running under Windows 64-bit Edition 节。
复制文件前加上一句:
DllCall("kernel32.dll", "int", "Wow64DisableWow64FsRedirection", "int", 1)

最佳办法是,先用@AutoItX64判断是否x64系统,确定后用 Wow64DisableWow64FsRedirection 禁用文件重定向,然后执行复制操作。最后,用 Wow64EnableWow64FsRedirection 或 Wow64RevertWow64FsRedirection 恢复重定向。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-21 22:17 , Processed in 0.082404 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表