我试图从32位C#应用程序(在64位操作系统上)运行可执行文件,但我得到“系统找不到文件指定“可能是因为wsqmcons.exe不存在于C:\ Windows \ SySWOW64中。该文件在System32中存在。如果可能,从代码运行wsqmcons.exe的最佳方式是什么?与Wow64RevertWow64FsRedirection从32位代码在System32中运行64位可执行文件
Process p = new Process();
p.StartInfo.Arguments = "-f";
p.StartInfo.FileName = @"C:\Windows\System32\wsqmcons.exe";
p.Start();
p.WaitForExit();
Verify.AreEqual(0, p.ExitCode);
对于一个快速正肮脏的修复,尝试改变的路径:'@ “C:\ WINDOWS \ Sysnative \ wsqmcons.exe”'。 有关更多针对Win32 API的其他详细信息/指针,请参阅http://support.microsoft.com/kb/942589,但也可能对.NET有所帮助。 –
@Michael根据http://msdn.microsoft.com/en-us/library/aa384187%28VS.85%29.aspx这是建议,所以它不是很快,n-dirty毕竟!我相信你应该发表这个评论作为答案。 – Steven