我这样做:
public static void ExecProcess(String path, string filename)
{
Process proc = new Process();
proc.StartInfo.FileName = path + "nst.exe";
proc.StartInfo.Arguments = filename;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
proc.WaitForExit();
var stringa = proc.StandardOutput.ReadToEnd();
proc.Close();
}
问题是我的进程是使用我的C#应用程序的路径而不是它的路径。 nst.exe
位于C:\Desktop
,但当我使用上面的代码调用它时,执行路径变为C:\\Documents\VisualStudio\MyProject\Debug\
。
我如何在他的道路上执行这个过程?
[编辑] 这就是我调用方法的方法:
public void EseguiOttimizzatore()
{
OttimizzatoreService.ExecProcess(@"C:\Users\Developer\Desktop\", _idPlanning.ToString() + ".dat");
}
答案 0 :(得分:1)
设置WorkingDirectory
的{{1}}属性:
StartInfo