Я пытаюсь использовать Invoke-Command
для запуска скриптового блока на удаленной машине.Invoke-command StackOverFlowException
ScriptBlock является:
$scriptBlock = { echo Y | .\DP.EXE IMPORT $remoteExportDir 'MicrosoftDynamicsAx' $remoteMachine }
Я бег этого ScriptBlock так:
Invoke-Command -ComputerName $remoteMachine -ScriptBlock $scriptBlock -AsJob
я запускаю это и я могу видеть его выполнение процесса на удаленном компьютере. Эта команда занимает около 40-50 минут для запуска локально. Он работает только около 25 минут, когда я делаю это дистанционно.
Глядя на состояние, в котором говорится, что оно завершено без ошибок, но DP.exe
создает файл журнала и не генерирует его. Когда я смотрю на выходе на работу я вижу, что он не смог с этим сообщением:
+ CategoryInfo : NotSpecified: (:String) [], RemoteException + FullyQualifiedErrorId : NativeCommandError Process is terminated due to StackOverflowException. Process is terminated due to StackOverflowException.
DP.EXE
является приложением для импорта данных в тестовой среде для Microsoft Dynamics AX 2012. Эта команда работает без проблем, если я просто запустите его локально на машине. Я пытаюсь написать сценарий для запуска этой команды через серию из 5 + машин по расписанию.
Я не уверен, почему я получаю это исключение StackOverFlowException и что могу сделать, чтобы получить его.
ли DP.exe программа, написанная в доме? –
нет нет от Microsoft. Интересно, это ограничение памяти на удаленном сеансе. Я установил winrsrm/config/winrs MaxMemoryPershell на более высокий лимит. Я посмотрю, решит ли это это. – Doug