Christian Stewart
Christian Stewart

Reputation: 15519

Launch WPF application using Process.Start

I am attempting to launch a wpf application using Process.Start. When I launch the process by double-clicking it in explorer.exe, it launches properly; however, when I try to use the following code snippet:

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);

My WPF process flashes in the task manager briefly before immediately closing.

Upvotes: 2

Views: 12444

Answers (1)

Christian Stewart
Christian Stewart

Reputation: 15519

I fixed the problem this way:

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

The trick was to set the working directory to the path of the WPF application, rather than the working directory of the launching application.

Upvotes: 9

Related Questions