VBScript中On Error语句用法小结

如果不使用 On Error 语句,则任何运行时错误都是致命的;也就是说,结果会导致显示错误信息并中止运行。一个“允许的”错误处理程序是由 On Error 语句打开的一个处理程序;一个“活动的”错误处理程序是处理错误的过程中允许的错误处理程序。

On Error GoTo 0

表示禁止当前过程中任何已启动的错误处理程序。

On Error Resume Next

说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。访问对象时要使用这种形式而不使用 On Error GoTo。

On Error GoTo line

启动错误处理程序,且该例程从必要的 line 参数中指定的 line 开始。line 参数可以是任何行标签或行号。如果发生一个运行时错误,则控件会跳到 line,激活错误处理程序。指定的 line 必须在一个过程中,这个过程与 On Error 语句相同; 否则会发生编译时间错误。

一般情况下,如果在对我们创建的对象或控件进行错误捕捉,需要使用On Error Resume Next ,然后在判断它的Err.Number,根据错误类型来做相应的处理。

附一段error相关的代码:

On Error Resume Next
Dim Msg
Err.Clear
Err.Raise 6  ' Generate "Overflow" error.
Err.Helpfile = "yourHelp.hlp"
Err.HelpContext = 5
If Err.Number <> 0 Then
  Msg = "Press F1 or Help to see " & Err.Helpfile & " topic for" & _
  " the following HelpContext: " & Err.HelpContext
  MsgBox Msg, , "error: " & Err.Description, Err.Helpfile, Err.HelpContext
End If

以上所述就是本文的全部内容了,希望大家能够喜欢。

(0)

相关推荐

  • vbScript on error resume next容错使用心得

    vbscript中,错误处理使用on error resume next来完成,如果在你的代码里加入这一句,在这句之后的其他代码如果出现错误,系统将忽略这些错误继续运行后面的代码,同时,我们可以使用下面的代码来捕获错误 复制代码 代码如下: If err.number<>0 then errNum = Err.Number errDesc = Err.Description Call G00B02logOut("Error.002", errNum ,errDesc ) E

  • VBS教程:VBscript语句-On Error 语句

    On Error 语句启用或禁用错误处理程序. On Error Resume NextOn Error GoTo 0 说明如果在您的代码中未使用 On Error Resume Next 语句, 所发生的运行时错误 将显示错误信息,同时,代码的执行也随之终止.但是具体操作由运行代码的主机决定.主机有时可有选择地处理各类错误.在有些情况下,它可以在出错的地方激活脚本调试器.而在另一些情况下, 由于主机无法通知用户,因此对所发生的错误没有明确说明.至于如何处理错误则完全取决于主机的功能. 在任意一

  • VBScript中On Error语句用法小结

    如果不使用 On Error 语句,则任何运行时错误都是致命的:也就是说,结果会导致显示错误信息并中止运行.一个"允许的"错误处理程序是由 On Error 语句打开的一个处理程序:一个"活动的"错误处理程序是处理错误的过程中允许的错误处理程序. On Error GoTo 0 表示禁止当前过程中任何已启动的错误处理程序. On Error Resume Next 说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行.访问对象时要使用这

  • C/C++ 中const关键字的用法小结

    C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性. Const作用 NO. 作用 说明 参考 1 可以定义const常量 const int Max = 100; 2 便于进行类型检查 const常量有数据类型,而宏常量没有数据类型.编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换时可能会产生意料不到的错误 void f(const int i) { ---} //对传入的参数进行类型检查,不匹配进行提示 3 可以保护被修

  • mybatis 中 foreach collection的用法小结(三种)

    foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合. foreach元素的属性主要有 item,index,collection,open,separator,close. item表示集合中每一个元素进行迭代时的别名,     index指 定一个名字,用于表示在迭代过程中,每次迭代到的位置,     open表示该语句以什么开始,     separator表示在每次进行迭代之间以什么符号作为分隔 符,     close表示以什么结束. 在使用foreach的时候

  • JavaScript中的标签语句用法分析

    本文实例分析了JavaScript中的标签语句用法.分享给大家供大家参考.具体分析如下: 最近在看w3school,然后看到js部分, <!DOCTYPE html> <html> <body> <script> cars=["BMW","Volvo","Saab","Ford"]; list: { document.write(cars[0] + "<br>

  • python中while循环语句用法简单实例

    本文实例讲述了python中while循环语句用法.分享给大家供大家参考.具体如下: number = 1 while number < 20: print(number) number += 1 运行结果如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 希望本文所述对大家的Python程序设计有所帮助.

  • python中list循环语句用法实例

    本文实例讲述了python中list循环语句用法.分享给大家供大家参考.具体用法分析如下: Python 的强大特性之一就是其对 list 的解析,它提供一种紧凑的方法,可以通过对 list 中的每个元素应用一个函数,从而将一个 list 映射为另一个 list. 实例 复制代码 代码如下: a = ['cat', 'window', 'defenestrate'] for x in a:      print x, len(x) for x in [1, 2, 3]: print x,    

  • Javascript中For In语句用法实例

    本文实例讲述了Javascript中For In语句用法.分享给大家供大家参考.具体如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>For In 语句</title> <

  • C#中while循环语句用法实例详解

    本文实例讲述了C#中while循环语句用法.分享给大家供大家参考.具体实现方法如下: 在C#中while循环是我们经常会用到的一种循环语句,while循环特点是直到条件为零时才跳出循环,当然中间可以利用其它函数直接跳出,对于while的具体用法有必要做一个较为详尽的分析. 先来说Foreach和For的区别,Foreach是针对对象进行遍历的,不需要定义循环次数,但是有个缺点,Foreach遍历取的是只读数据,不能在Foreach中进行对象的增删改,而For循环就可以.这个改成while循环的代

  • python中的import语句用法大全

    import语句有什么用?import语句用来导入其他python文件(称为模块module),使用该模块里定义的类.方法或者变量,从而达到代码复用的目的. import 语句官方文档https://docs.python.org/zh-cn/3/reference/simple_stmts.html#the-import-statement 不太好懂,解读一下: 格式一: import 模块名1 [as 别名1], 模块名2 [as 别名2],- 说明:1)将整个模块导入:2)[as 别名]部

  • C#中AutoResetEvent控制线程用法小结

    目录 AutoResetEvent主要方法及实践 第二种方法Semaphore 第三种方法,约定每个线程只干自己的事 第四种方法 Mutex 本文主要来自一道面试题,由于之前对AutoResetEvent的概念比较模糊(即使已经使用过了).面试题题目很简洁:两个线程交替打印0~100的奇偶数.你可以先动手试试,我主要是尝试在一个方法里面完成这个任务. 注: Suspend,Resume来控制线程已经在.net framework2.0被淘汰了,原因就是挂起之后,但因为异常而没有及时恢复,如果占用

随机推荐