Я пытаюсь выяснить, есть ли хороший способ узнать, правильно ли запущен Process
.
Я использую следующий код:
if (!_process.Start())
{
throw new Exception("Component {0} failed to start.".FormatWith(component.Name));
}
if (!_process.IsMyProcessRunning())
{
throw new Exception("Component {0} failed to start.".FormatWith(component.Name));
}
static public class MyExtensions
{
public static bool IsMyProcessRunning(this Process process)
{
return !process.HasExited && process.Id != 0 ;
}
}
Я предполагаю, чтоStart()
метод быстрее, и иногда я получаю исключение, а иногда нет.мой процесс запускает ошибочную программу.