C#使用File.Copy()将文件复制到%systemroot%\ system32,但结果是该文件被复制到%systemroot%\ SysWOW64中?

问题描述:

我不知道为什么执行File.Copy(@“D:\ test.txt”,“%systemroot%\ system32 \ test.txt”),为什么文件test.txt被复制到%systemroot%\ SysWOW64 ??C#使用File.Copy()将文件复制到%systemroot% system32,但结果是该文件被复制到%systemroot% SysWOW64中?

+4

我做了*努力*! 5秒的时间给了我这个[惊喜](http://*.com/questions/10100390/file-getting-copied-to-syswow64-instead-of-system32)。首先谷歌你的问题,可能有一个*好*的机会,已经有一个问题的答案。 – Jim

+0

我第一次谷歌,但我没有找到类似的问题!我很抱歉,我看不到 – Superman

因为%windir%\ system32专门用于64位应用程序,所以在64位版本的Windows上,尝试访问%windir%\ System 32目录的32位应用程序会自动并透明地重定向到32位%windir%\ syswow64目录。

最简单的方法是将您的实用程序编译为64位应用程序。