Как я могу начать новый процесс и дождаться его завершения?

Я хочу запустить программу с C# (можно использовать Process.Start()). Затем моя программа должна дождаться закрытия запущенной программы, прежде чем она продолжится.
Как мне это сделать?

2 ответов


после вызова Start() добавить: Process.WaitForExit()

 var myProcess = new Process {StartInfo = new ProcessStartInfo(processPath)};
 myProcess.Start().WaitForExit();

есть два механизма. Вы можете либо зацепить процесс.Завершенное событие или то, что вы, вероятно, действительно хотите, - это вызвать процесс.WaitForExit().

http://msdn.microsoft.com/en-us/library/system.diagnostics.process.exited.aspx

http://msdn.microsoft.com/en-us/library/system.diagnostics.process.waitforexit.aspx