Try-Catch无法捕获非终止错误'hresult'

时间:2016-11-16 07:57:30

标签: windows powershell iis try-catch iis-8

我需要捕获当前输出的跟随错误:

  

错误(hresult:80070425,消息:命令执行失败。)   服务此时无法接受控制消息。

从我的PowerShell脚本代码段中找不到当前错误:

Try{
    appcmd start apppool /apppool.name:DefaultAppPool
}Catch{
    #$ErrorMessage = $_.Exception.Message
    #$FailedItem = $_.Exception.ItemName
    Write-Host "AppPool cannot start." -BackgroundColor Red
}

我错过了什么吗?我希望错误消息尽可能具体。如果它有帮助,这是IIS8.5。我引用了这些链接:1 | 2 | 3 | 4 | 5 |

1 个答案:

答案 0 :(得分:3)

您收到的错误消息可能来自appcmd因此 例外,您可以捕获。您可以查看$global:LastExitCode以确认呼叫是否成功。

但是,还有一个WebAdministration 模块,其中包含Start-WebAppPool cmdlet:

Import-Module WebAdministration
Start-WebAppPool -Name 'DefaultAppPool'