首页 > 开发 > PowerShell > 正文

Powershell实现捕获系统内置EXE程序的异常

2020-05-30 20:18:57
字体:
来源:转载
供稿:网友

支持所有版本。

当你运行控制台EXE命令,如robocopy.exe, ipconfig.exe或类似命令。你可以用Powershell获得他们引起的错误:

代码如下:
try
{
    $current = $ErrorActionPreference
    $ErrorActionPreference = 'Stop'
    # this will cause an EXE command to emit an error
    # (replace with any console-based EXE command)
    net.exe user nonexistentUser 2>&1
    $ErrorActionPreference = $current
}
catch
{
   Write-Host ('Error occured: ' + $_.Exception.Message)
}

要捕获错误你需要设置$ErrorActionPreference 为$stop,与此同时,你需要更改错误的输出方式添加“2>&1”
这样设置后,你就可以通过Powershell捕获.net中的错误了。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表