Удаленный Выход Процесса

По умолчанию PsExec не выходит, пока программа, которую он запускал, не вышла. Когда процесс выходит, он сообщает о коде выхода — 32-разрядном целом числе — к операционной системе, где он может быть считан ее родительским процессом (или любой другой процесс, у которого есть открытый дескриптор к нему). Код выхода часто используется, чтобы сообщить ли процесс, за которым следуют в его задаче, с 0 (нуль), обычно указывающий на успех. Код выхода - то, что тестируется командой IF ERRORLEVEL Кмд и && и || условные операторы. PsExec выводит код выхода процесса к своей консоли (например, "Notepad.exe выходил с кодом ошибки 0"). PsExec тогда выходит, используя код выхода целевой программы в качестве его собственного кода выхода так, чтобы родительский процесс или пакетный файл могли протестировать это и выполнить условную обработку.

Когда -d опция PsExec используется, PsExec запускает удаленный процесс, но не ожидает его, чтобы выйти. На успехе PsExec выводит ID процесса нового процесса к stderr потоку и выходам, используя новый PID в качестве его собственного кода выхода. Тот PID может быть получен в пакетном файле как это:

psexec \\server1-d App.exe УСТАНАВЛИВАЮТ NEWPID = % % ERRORLEVEL

ОТЗОВИТЕСЬ ЭХОМ ID Процесса для App.exe является %NEWPID %

Однако, если PsExec не может запустить удаленный процесс, его код выхода представляет код ошибки. Нет надежного программируемого способа различить, является ли код выхода PID или кодом ошибки.

 




double arrow
Сейчас читают про: