Как я могу сказать когда.Net System. Диагностика. Процесс работал успешно или перестал работать?

Используя base :: strftime () , вы можете получить символ нужного времени с любым делением секунд. Ниже я сохранил текущее время в единицу 1/1000 секунды, используя число «4» после «ОС»:

Используя текущее системное время:

time = Sys.time() str(time)

POSIXct [1: 1], формат: "2019-01-19 15: 41: 28.185"

newTime = strftime(Sys.time(), format="%H:%M:%OS4") str(newTime)

chr «15: 41: 28.1851»

newTime

[1] «15: 41: 28.1851»

5
задан Udo Held 8 March 2017 в 11:06
поделиться

4 ответа

Можно поймать Win32Exception, чтобы проверить если Процесс. Запустите (), перестал работать из-за файла не, существующий или доступ на выполнение отклонен.

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

То, что можно сделать, проверяют ExitCode приложения или читают потоки StandardOutput и StandardError, чтобы проверить, отправляются ли сообщения об ошибках.

8
ответ дан 18 December 2019 в 12:03
поделиться

Я думаю, что Вы ищете Процесс. ExitCode, принимая процесс возвращает тот. Вы, возможно, должны использовать WaitForExit () все же. Существует также событие ErrorDataReceived, которое инициировано, когда приложение отправляет к stderr.

5
ответ дан 18 December 2019 в 12:03
поделиться

В дополнение к ExitCode можно также сделать что-то вроде этого:

string output = p.StandardOutput.ReadToEnd();

Это получит все, что было бы записано в командное окно. Затем можно проанализировать ту строку для известных шаблонов для отображения ошибок, в зависимости от приложения.

2
ответ дан 18 December 2019 в 12:03
поделиться

Подробно остановиться что сказанный @jop. Необходимо будет также ожидать процесса для закрытия. Таким образом:

        p.Start();
        p.WaitForExit();
        int returnCode = p.ExitCode;

Ненулевые коды обычно являются ошибками. Отрицательные использования некоторого приложения являются ошибками и положительными как состояние, codes/warnings.

0
ответ дан 18 December 2019 в 12:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: