抑制整个脚本的错误

时间:2012-11-29 14:00:47

标签: error-handling vbscript gpo

我想要抑制可能出现在我的VBS登录脚本中的所有错误。

我可以用:

包围WHOLE 500行脚本
On Error Resume Next

'[... whole script (~500 lines of code) ...]

On Error GoTo 0

1 个答案:

答案 0 :(得分:9)

可以做到这一点 - 即使没有OEG0行 - 但是你不应该这样做,因为脚本将继续执行我...最后一行,即使行i-1中有错误使您对这些行中必要的前提条件的所有假设无效。你的策略与闭眼驾驶相当,以避免被其他车辆的前灯弄得眼花缭乱。

如果您无法对选定的操作进行本地重新设置的错误处理 -

...
On Error Resume Next
  risky_action
  save Err
On Error GoTo 0
If ErrorOccurred Then
   something sensible
   If can't continue Then
      WScript.Quit 4711
   End If
End If
...

试图逃脱

Sub Main()
  ... you 500 lines ...
End Sub 

On Error Resume Next
  Main
  If Err.Number Then
     WScript.Echo "aborted"
     WScript.Quit 4711
  End If

此方法可确保不会执行错误后的行。