В .Net существует класс Process предоставляющий доступ к локальным и удаленным процессам, а так же позволяет запускать и останавливать локальные системные процессы. Данный класс имеет метод Process.WaitForExit, задающий период времени для ожидания завершения связанного процесса и блокирует текущий поток.
При завершении связанного процесса (то есть, когда он завершает свою работу под воздействием операционной системы через нормальное или аварийное завершение) система сохраняет административную информацию о процессе и возвращает ее компоненту, вызвавшему метод WaitForExit().
Создайте проект Windows Form в Microsoft Visual Studio и добавьте на главную форму компонент «Button». Сделайте двойной клик левой клавишей мыши по компоненту «Button» и перейдите в автоматически созданный метод «button1_Click». Добавьте приведенный ниже листинг:
OpenFileDialog ofd = new OpenFileDialog();
ofd.ShowDialog();
System.Diagnostics.ProcessStartInfo psi =
new System.Diagnostics.ProcessStartInfo(ofd.FileName);
System.Diagnostics.Process rfp = new System.Diagnostics.Process();
rfp = System.Diagnostics.Process.Start(psi);
rfp.WaitForExit();//ожидание завершения процесса
if (rfp.HasExited)
MessageBox.Show("Процесс был успешно закрыт");
Ссылка на исходник: Rusfolder.net
0.00 (0%) 0 votes










