使用Process.Start启动WPF应用程序

时间:2013-11-14 04:42:04

标签: c# wpf process

我正在尝试使用Process.Start启动 wpf应用。当我通过在explorer.exe中双击它来启动该过程时,它会正确启动;但是,当我尝试使用以下代码片段时:

var programPath = @"C:\Users\user\Documents\Program Directory\program.exe";
if(!File.Exists(programPath))
{
     MessageBox.Show("The program.exe file does not exist! Cannot launch.");
     return;
}
Process.Start(programPath);

我的WPF进程在关闭之前短暂地在任务管理器中闪烁。

1 个答案:

答案 0 :(得分:5)

我用这种方式解决了问题:

Process proc = new Process();
proc.StartInfo.FileName = programPath;
proc.StartInfo.WorkingDirectory = Path.GetDirectoryName(programPath);
proc.Start();

诀窍是将工作目录设置为WPF应用程序的路径,而不是启动应用程序的工作目录。