Получение процесса для завершения - PullRequest
0 голосов
/ 30 ноября 2009

У меня есть объект процесса настройки, подобный следующему:

Process p = new Process();
p.StartInfo.FileName = command;
p.StartInfo.UseShellExecute = true;
p.StartInfo.Arguments = String.Format(
    commandArguments,
    destinationLocation,
    sourceLocation,
    sourceDirName,
    (string.IsNullOrEmpty(revisionNotes.Text)) ? "" : revisionNotes.Text);

(где неопределенные значения поставляются извне в этот код и являются действительными). Рассматриваемый процесс запускается и корректно выполняется с p.Start();, но мне нужно отловить его при завершении. Окно консоли на короткое время вспыхивает и исчезает, что, по-видимому, указывает на то, что процесс завершен, но ни одно из соответствующих событий не запускается (OutputDataRectained, Exited и т. Д.), И процесс как никогда не заканчивается. (Я пытаюсь выполнить скрипт lua с некоторыми параметрами, если это актуально). Может ли кто-нибудь помочь мне правильно остановить этот процесс?

Ответы [ 2 ]

4 голосов
/ 30 ноября 2009
2 голосов
/ 30 ноября 2009

Установлено ли для свойства EnableRaisingEvents процесса значение True? Вы не поймаете событие Exited без него.

...