我需要在C#中从我的应用程序启动一个exe文件。
查询字符串应如下所示:
Extractor.exe "base\sql" "develop" "..\Data\System" "Grids"
这是我的代码:
public static void StartExtractor()
{
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = OurFields.keskullPass + @"\Extractor.Deploy\Extractor.exe";
process.StartInfo.Arguments = "\"base\\sql\" \"develop\" \"..\\Data\\System\" \"Grids\"";
process.Start();
process.WaitForExit();
}
答案 0 :(得分:3)
使用C#中的参数启动进程的简单方法:
Process.Start("yourapp.exe", "your arguments");
如果您确实需要等待进程退出,则会变为:
var process = Process.Start("yourapp.exe", "your arguments");
process.WaitForExit();
通常您不会手动创建Process
对象。
进程在System.Diagnostics
中定义,因此您还需要将其添加到using子句中。
你的问题可能与外部申请对论证的具体期望有关。格式,或连接到exe的完整路径的错误。
引用参数你可以像你一样手动完成,或使用这样的例程:How to correctly escape command line arguments in c#