Справочник по C#

    Исходники по языку программирования CSharp

    Ожидание завершения процесса: Справочник по C#

    /
    /
    /
    73 Views


          В .Net существует класс Process предоставляющий доступ к локальным и удаленным процессам, а так же позволяет запускать и останавливать локальные системные процессы. Данный класс имеет метод Process.WaitForExit, задающий период времени для ожидания завершения связанного процесса и блокирует текущий поток.
          При завершении связанного процесса (то есть, когда он завершает свою работу под воздействием операционной системы через нормальное или аварийное завершение) система сохраняет административную информацию о процессе и возвращает ее компоненту, вызвавшему метод WaitForExit().

    Внимание! В .NET Framework 3.5 и более ранних версий, перегрузки WaitForExit(), не бесконечно ждали MaxValue (примерно 24 дня). Кроме того, предыдущие версии не дожидались выхода обработчика событий, если было достигнуто полное время MaxValue.

          Создайте проект 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

    Ожидание завершения процесса: Справочник по C#

    0.00 (0%) 0 votes

    moyadcode13
    • Facebook
    • Twitter
    • Google+
    • Linkedin
    • Pinterest
    moyadcode10
    moyadcode11
    moyadcode9