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

On Error 语句

启用或禁用错误处理程序。

On Error Resume Next
On Error GoTo 0

说明

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

在任意一个特殊过程中,只要在调用堆栈的地方启用错误处理程序,所发生的错误一般不会是致命性的。如果在一个过程中没有启用局部错误处理程序,当发生错误时,控制可通过堆栈调用转移,直到找到一个具有错误处理程序的过程,并在出错的地方处理错误。如果在调用堆栈的过程中没有找到错误处理程序,则在出错的地方显示错误信息,同时终止代码执行,或者通过主机来正确处理错误。

On Error Resume Next 会使程序按照产生错误的语句之后的语句继续执行,或是按照最近一次所调用的过程(该过程含有 On Error Resume Next 语句)中的语句继续运行。这个语句可以不顾运行时错误,继续执行程序,之后您可以在过程内部建立错误处理例程。在调用另一个过程时,On Error Resume Next 语句变为非活动的。所以,如果希望在例程中进行内部错误处理,则应在每一个调用的例程中执行 On Error Resume Next 语句。

当调用另一过程时,禁止使用On Error Resume Next 语句,因此如果您想在例程中嵌入错误处理程序,则需要在每次调用例程时都应执行 On Error Resume Next 语句。当退出一个过程时,错误处理程序可恢复到它在进入所退出过程之前的状态。

如果您已启用 On Error Resume Next 错误处理程序,则可使用 On Error GoTo 0禁用错误处理程序。

下面例子举例说明如何使用 On Error Resume Next 语句:

On Error Resume NextErr.Raise 6  '产生溢出错误。MsgBox ("Error # " & CStr(Err.Number) & " " & Err.Description)Err.Clear    '清除错误。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索vbs循环语句、vbs for循环语句、vbs if语句、vbs语句未结束、vbs goto语句,以便于您获取更多的相关知识。

时间: 2024-08-01 12:25:57

VBS教程:VBscript语句-On Error 语句_vbs的相关文章

VBScript中On Error语句用法小结_vbs

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

VBScript中On Error语句用法小结

  VBScript语言提供了两个语句和一个对象来处理"运行时错误",如下,1.On Error Resume Next语句,2.On Error Goto 0语句,3.Err对象,下面我们就来详细探讨下. 如果不使用 On Error 语句,则任何运行时错误都是致命的;也就是说,结果会导致显示错误信息并中止运行.一个"允许的"错误处理程序是由 On Error 语句打开的一个处理程序;一个"活动的"错误处理程序是处理错误的过程中允许的错误处理程

VBS教程:方法-Add 方法(Dictionary)_vbs

Add 方法(Dictionary) 向 Dictionary 对象添加键和项目对. object.Add key, item 参数 object 必选项.应为 Dictionary 对象的名称. key 必选项.与添加的 item 相关的 key. item 必选项.与添加的 key 相关的 item. 说明 如果 key 已经存在,则会出现错误. 下面例子举例说明如何使用 Add 方法: Dim d '创建变量.Set d = CreateObject("Scripting.Dictiona

VBS教程:方法-AddFolders 方法(Folders)_vbs

AddFolders 方法(Folders) 向 Folders 集合添加新 Folder. object. Add(folderName) 参数 object 必选项.应为 Folders 集合的名称. folderName 必选项.要添加的新 Folder 名称. 说明 下面例子举例说明如何利用 Add 方法添加新文件夹: Sub AddNewFolder(path, folderName) Dim fso, f, fc, nf Set fso = CreateObject("Scripti

VBS教程:正则表达式简介 -建立正则表达式_vbs

建立正则表达式 构造正则表达式的方法和创建数学表达式的方法一样.也就是用多种元字符与操作符将小的表达式结合在一起来创建更大的表达式. 可以通过在一对分隔符之间放入表达式模式的各种组件来构造一个正则表达式.对 Visual Basic Scripting Edition 而言,分隔符为一对正斜杠 (/) 字符.例如: /expression/ 对 VBScript 而言,则采用一对引号 ("") 来确定正则表达式的边界.例如: "expression" 在上面所示的两

VBS教程:正则表达式简介 -普通字符_vbs

普通字符 普通字符由所有那些未显式指定为元字符的打印和非打印字符组成.这包括所有的大写和小写字母字符,所有数字,所有标点符号以及一些符号. 最简单的正则表达式是一个单独的普通字符,可以匹配所搜索字符串中的该字符本身.例如,单字符模式 'A' 可以匹配所搜索字符串中任何位置出现的字母 'A'.这里有一些单字符正则表达式模式的示例: /a//7//M/ 等价的 VBScript 单字符正则表达式为: "a""7""M" 可以将多个单字符组合在一起得到

VBS教程:正则表达式简介 -字符匹配_vbs

字符匹配 句点 (.) 匹配一个字符串中任何单个的打印或非打印字符,除了换行符 (\n) 之外.下面的 Visual Basic Scripting Edition 正则表达式可以匹配 'aac'.'abc'.'acc'.'adc'如此等等,同样也可以匹配 'a1c'.'a2c'.a-c'以及 a#c': /a.c/ 等价的 VBScript 正则表达式为: "a.c" 如果试图匹配一个包含文件名的字符串,其中句点 (.) 是输入字符串的一部分,则可以在正则表达式中的句点前面加上一个反

VBS教程:正则表达式简介 -正则表达式语法_vbs

正则表达式语法 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. 这里有一些可能会遇到的正则表达式示例: Visual Basic Scripting Edition VBScript 匹配 /^\[ \t]*$/ "^\[ \t]*$" 匹配一个空白行. /\d{2}-\d{5}/ "\d{2}-\d{5}&quo

VBS教程:正则表达式简介 -使用正则表达式_vbs

使用正则表达式 在典型的搜索和替换操作中,必须提供要查找的确切文字.这种技术对于静态文本中的简单搜索和替换任务可能足够了,但是由于它缺乏灵活性,因此在搜索动态文本时就有困难了,甚至是不可能的. 使用正则表达式,就可以: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证. 替换文本.可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字. 根据模式匹配从字符串中提取一个子字符串.