命令行Start.Info.Argument错误

时间:2015-06-16 09:05:32

标签: c# command-line wix heat

我想用C#运行此命令:

  

"%WIX%/斌/ heat.exe" dir" C:\ Documents and Settings \ APP" -gg -sfrag   -cg Appli -out wixappli.wxs

我有这个代码(Program.cs):

System.Diagnostics.Process process1 = new System.Diagnostics.Process();
process1.StartInfo = new System.Diagnostics.ProcessStartInfo("cmd.exe");
process1.StartInfo.Arguments = String.Format("/k \"%WIX%/bin/heat.exe\" dir \"{0}\" -gg -sfrag -cg Appli -out wixappli.wxs ",
@"C:\Documents and Settings\APP");
process1.StartInfo.WorkingDirectory = @"C:\Documents and Settings\test";
process1.StartInfo.CreateNoWindow = true;
process1.StartInfo.ErrorDialog = false;
process1.Start();

错误:

  

' C:\程序'不被视为内部命令或外部命令   命令

我不明白,因为没有C#,它就有效。

你能帮助我吗?

1 个答案:

答案 0 :(得分:1)

通常,路径环境(%windir%,%temp%等)使用反斜杠(\)。尝试修改你的参数以使用反斜杠而不是斜杠(\“%WIX%\ bin \ heat.exe \”...