Проверка результата запуска процесса с помощью C # - PullRequest
1 голос
/ 12 февраля 2011

Этот пост имеет следующий код.

Process p = new Process();
StringBuilder sb = new StringBuilder("/COVERAGE ");
sb.Append(exeFileName);
p.StartInfo.FileName = "vsinstr.exe";
p.StartInfo.Arguments = sb.ToString();
p.Start();
p.WaitForExit();
// Look at return code – 0 for success

В комментарии сказано, что мне нужно проверить код возврата, но p.WaitForExit() ничего не возвращает.

  • Q1: Какой код возврата мне нужно проверить?
  • Q2: Как обычно можно проверить, в порядке ли запущенный процесс?

Ответы [ 4 ]

5 голосов
/ 12 февраля 2011

Для Q1 проверьте свойство Process.ExitCode.

Для Q2 коды выхода для успеха и неудачи определяются самим вызываемым процессом, но условно 0 указывает на успех, а все остальное указывает на ошибку.

2 голосов
/ 12 февраля 2011

просто посмотрите на ExitCode свойство, чтобы увидеть, успешно ли завершился процесс.

Что касается запущенного процесса, вы можете наблюдать стандартный поток ошибок чтобы увидеть, есть ли там какие-либо сообщения.Скорее всего, они будут представлять какую-то проблему, но это еще более зависит от реализации, чем код выхода.

0 голосов
/ 12 февраля 2011

Просто проверьте

p.ExitCode

после завершения процесса. Свойство Process.ExitCode

0 голосов
/ 12 февраля 2011

После завершения процесса свойство ExitCode экземпляра объекта System.Diagnostics.Process должно содержать код состояния программы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...