我试图在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