PowerShellのリモートコンピュータからの引数を含む実行可能ファイルを実行しようとしていますが、実行ファイルがスローするエラーを適切に処理します。PowerShellで実行可能ファイルを実行し、実行可能ファイルのエラーコードを正しく返すようにしました
ファイル$ filenameが存在する限り、以下のスクリプトは期待通りに実行されますが、ファイルがなければスクリプトは正常に実行されるようにも見えますが、スケジューラの問題につながります。に。私の期待は、PowerShellが "ファイルが見つかりません"などのエラーをスローすることですが、それは起こっていません。それで、このスクリプトにその動作を起こすために追加できるものは何ですか?
$ErrorActionPreference = "stop"
$rSession = New-PSSession -ComputerName ServerName
$fileName = c:\file.txt
Invoke-Command -ScriptBlock {Start-Process -FilePath "D:\CAMRA\PFX\PFLNS.EXE" -ArgumentList " /SD:\CAMRA\CAMINI\Z_PRODNP_SQL_TEST.INI GLSWEEP 50 {DN}~$fileName~{T}" -Wait} -Session $rSession
Remove-PSSession $rSession
は、私が私が探しています何をするのPowerShellを通じて正しく.exeファイルを呼び出しておりませんので、私は、私は、このスクリプトを変更するカムどのように任意の提案に開いているであろうことも可能です。
おかげで、
([スタートプロセスと代わり-waitのWaitForExitを使用して終了コードを取得する]の可能な重複http://stackoverflow.com/questions/10262231/obtaining-exitcode-using-start-process-and-waitforexit-代わりに待っている) – jveazey