我試圖在PowerShell中的遠程計算機上運行帶有參數的可執行文件,而我已經得到了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
這也可能是我沒有正確地調用.exe文件通過PowerShell中做什麼我期待,所以我將開放給任何建議我如何可修改該腳本。
感謝, 菲爾
([使用啓動過程和WaitForExit代替-Wait獲得的ExitCode]的可能的複製http://stackoverflow.com/questions/10262231/obtaining-exitcode-using-start-process-and-waitforexit-而不是等待) – jveazey