禁止整个脚本输出错误信息

8
我想要抑制在我的VBS登录脚本中可能出现的所有错误。
我可以用以下方式包围整个500行脚本吗:
On Error Resume Next

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

On Error GoTo 0
1个回答

12
你可以做到这一点,即使没有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

这种方法确保了在错误发生后的代码行不会被执行。


3
不,因为那样的话我就会创建VBScript,这样所有类型的错误都将不可能出现。 - Ekkehard.Horner
太真实了!那么你只是另一个人? - Jonathan Rioux

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接