0

你会认为这很简单......从命令行我可以执行

c:\windows\system32\cscript c:\windows\system32\iisext.vbs /ListFile

但是当我从托管代码中尝试它时......

Process proc = new Process();
proc.StartInfo.FileName = @"c:\windows\system32\cscript";
proc.StartInfo.Arguments = @"c:\windows\system32\iisext.vbs /ListFile";
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.Start();
proc.WaitForExit();
using (StreamReader sr = proc.StandardOutput) {
...

我收到此错误:

输入错误:找不到脚本文件“c:\windows\system32\iisext.vbs”

我错过了什么?

谢谢

4

1 回答 1

2

汉斯是正确的;问题几乎可以肯定是您在 32 位模式下运行,这意味着 C:\windows\system32 没有指向您认为的位置。(通过使用 Process Monitor 观察文件访问来验证)。

请改用 C:\windows\sysnative,或编译您的应用程序以针对 AnyCPU。

于 2013-03-28T20:59:24.103 回答