Листинг 64. Запуск внешней программы
// Создаем новый процесс
System.Diagnostics.Process proc = new System.Diagnostics.Process();
// Имя приложения
proc.StartInfo.FileName = "Notepad.exe";
// Запуск
proc.Start();
При необходимости дождаться завершения работы приложения можно использовать следующий код.
Листинг 65. Запуск внешней программы и ожидание ее завершения
// Выполняется по кнопке "Запустить!"
private void BtnStart_Click(object sender, System.EventArgs e)
{
StatusLabel.Text = "Запуск приложения...";
// Создание нового проекта
System.Diagnostics.Process proc =
new System.Diagnostics.Process();
// Свойства приложения
proc.StartInfo.FileName = "Notepad.exe";
proc.EnableRaisingEvents = true;
proc.SynchronizingObject = this;
// Обработчик завершения работы процесса
proc.Exited +=new EventHandler(closeHandler);
// Запустить
proc.Start();
}
// Обработчик закрытия процесса
private void closeHandler(object sender, EventArgs e)
{
StatusLabel.Text = "Приложение закрыто";
}