如何在win64上禁用重定向
我想使用regedit2.exe
名称将c:\Windows\regedit.exe
复制到同一目录但是当我尝试复制它时,我会收到一条错误,说明找不到regedit.exe
文件“或有时将其复制到windows\SysWOW64
目前。实际上我知道win64是重定向它但是如何禁用重定向并将windows / regedit.exe复制到windows / regedit2.exe。我的示例代码是
if(File.Exists(@"c:\Windows\regedit.exe")) try { File.Copy(@"c:\Windows\regedit.exe", @"c:\Windows\regedit2.exe", true); } catch (Exception ex){}
有任何人可以帮助我
有可用的Win32function可以禁用和启用重定向。
[DllImport("kernel32.dll", SetLastError = true)] static extern bool Wow64DisableWow64FsRedirection(ref IntPtr ptr); [DllImport("kernel32.dll", SetLastError = true)] static extern bool Wow64RevertWow64FsRedirection(IntPtr ptr);
例:
IntPtr wow64Value = IntPtr.Zero; // Disable redirection. Wow64DisableWow64FsRedirection(ref wow64Value); // Do whatever you need // ..................... // Re-enable redirection. Wow64RevertWow64FsRedirection(wow64Value);
- ASP.NET MVC“调用不明确”错误(System.IO.TextWriter.Write)
- 在.Net中获取CryptoStream的长度
- 如何从WCF REST方法返回自定义类型值的Dictionary作为常规JSON对象?
- 使用Json.Net将字节数组解析为json
- 使用ASP.NET MVC操作方法
- 在C#中,当一个字段可能是字符串或字符串数组时,如何反序列化此json?
- 为什么我不能在Base中将一个隐式运算符写入C#中的Derived类?
- .NET 4中的Math.Round()行为
- 此SqlParameterCollection不包含带有ParameterName’@ UserId’的SqlParameter