我正在将一些批处理文件自动化到一个C#应用程序中,但没有太多运气。我有以下批处理文件(以及另外3个)我试图用C#
编写"C:\Program Files\IIS Express\iisexpress.exe" /path:c:\windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles /vpath:"/asp.netwebadminfiles" /port:61569 /clr:4.0 /ntlm
以下是我在网上找到的C#代码,但它失败了:
using (Process proc = new Process())
{
proc.StartInfo.FileName = "iisexpress.exe";
proc.StartInfo.Arguments = @"/path:c:\windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles /vpath:/asp.netwebadminfiles /port:61569 /clr:4.0 /ntlm";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
proc.WaitForExit();
Console.Out.WriteLine(proc.StandardOutput.ReadToEnd());
}
在没有谷歌帮助的情况下,我得到以下信息:
“System.ComponentModel.Win32Exception”类型的未处理异常 发生在System.dll
中
答案 0 :(得分:4)
您需要向Process.StartInfo.FileName
提供exe的完整路径:
proc.StartInfo.FileName = @"C:\Program Files\IIS Express\iisexpress.exe";