使用 Process.Start() 执行进程,使用进程的路径
本文关键字:进程 路径 执行 Process Start 使用 | 更新日期: 2023-09-27 17:56:55
我正在这样做:
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");
}
设置 StartInfo
的 WorkingDirectory
属性:
proc.StartInfo.WorkingDirectory = @"C:'Users'Developer'Desktop'";