我有一个由三行组成的脚本:
<script type="text/javascript">
function Init(sender, eventArgs) {
sender._callbackManager.setTimeout(60000);
}
</script>
...
<ig:WebDataGrid ID="WebDataGrid1" runat="server" DataSourceID="EmployeesDataSource"
Width="100%" DataKeyFields="OrderID">
<ClientEvents Initialize="Init" />
(Invoke-GPUpdate -Computer $Computer -Force -RandomDelayInMinutes 0
Start-Sleep -Seconds 300
Close-UserSession -Computer $Computer -Force -Reboot
是一个函数,它最终只是调用远程计算机上的Win32ShutdownTracker来重新启动它。)
有时,Close-UserSession
无法访问目标计算机,并引发错误。如果它确实抛出错误,我不想要执行Invoke-GPUpdate
或Start-Sleep
。
基本上,我需要的几乎可以描述为&#34;尝试/反捕获&#34;。它必须是可能的;问题是......我该怎么做?
(注意:我不会坚持使用Try / Catch;它只是说明我需要的最佳方式。)
答案 0 :(得分:1)
只需尝试,
try
{
Invoke-GPUpdate -Computer $Computer -Force -RandomDelayInMinutes 0
Start-Sleep -Seconds 300
Close-UserSession -Computer $Computer -Force -Reboot
}
catch
{
Write-Output "Remote Computer: $Computer Could not be reached!"
}
答案 1 :(得分:0)
您将完整脚本放在try
中,而catch
中没有任何内容;这样,如果第一行发生错误,它将放弃其他2并转到catch
。