Назад | Перейти на главную страницу

Исключение при запуске PSExec на удаленном компьютере

Запуск этой команды

    $processesToSpawn = 3

    for($i= 1; $i -le $processesToSpawn; $i++){

        psexec \\computername -i 2 -u "username" -p "password" "c:\myapp.exe"
    }

Выдает следующую ошибку

    psexec : 
At C:\mypsScript.ps1:75 char:13
+             psexec \\computername  -i 2 -u "username" -p " ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

Он отлично выполняет и запускает первую итерацию цикла и открывает программу, которую я хочу, в сеансе RDP, но терпит неудачу сразу после первой итерации.

Редактировать: Это происходит только в среде IDE, запуск сценария из командной строки PS выполняется нормально. Так что считайте этот вопрос решенным.

Кроме того, мне пришлось добавить переключатель -d в команду PSExec (не ждать завершения процесса (не интерактивно).)

Вероятно, проблема в том, что psexec не ждет завершения вашего процесса / приложения.

Не могли бы вы попробовать следующий код, чтобы проверить, работает ли он?

psexec \\computername -i 2 -u "username" -p "password" cmd.exe /c "c:\myapp.exe"

(видеть http://forum.sysinternals.com/psexec-finishes-before-child_topic27463.html)