vbscript中,错误处理使用on
error resume next来完成,如果在你的代码里加入这一句,在这句之后的其他代码如果出现错误,系统将忽略这些错误继续运行后面的代码,同时,我们可以使用下面的代码来捕获错误,
这样可以捕获到错误代码和错误的描述信息,并写入日志文件。然
而,有个问题是,在我们捕获了这个错误之后的代码,如果再出现错误而你没有捕获的话,代码仍然会忽略错误继续运行。忽略错误是我们不希望看到的结果,将导致程序调试困难。此时可以使用 On
Error GoTo 0 这句来终止前面错误处理,即可以和on
error resume next 成对出现。这样就不会影响后面的代码了。
有几个特点需要了解,
1,on error resume
Next如果在全局定义,则作用是全局的,你在主程序中使用了这一句,后面如果调用了一个函数,那么函数中如果有错误,也将被忽略,你在主程序中函数调用的语句后面也可以捕获到这个错误,这一点可以通过下面简单的代码验证:
执行以上代码的结果:
13 - 型が一致しません。
main ....
可以看出,在函数中,aaaaaaaaaaa是故意制造的一个错误,其后的WScript.Echo "funcb ok"以及后面的代码都没有执行。但是,主程序中的WScript.Echo "main ...."语句是执行了的。就是说,在函数中如果某个语句出错,函数中后面的语句都不执行,直接执行调用函数的语句后面的语句。
2,On error resume Next如果在函数内定义,看下面的代码执行情况
执行结果如下:
funcb ok
13 -
型が一致しません。
13 - 型が一致しません。
main ....
可以看到,函数体内的err对象和调用它的主程序中都可以捕获到这个错误,这说明err对象是全局的,应该这么理解,err的作用范围在一个On error resume Next语句和一个On Error Goto 0之间有效。如果我们在funcb调用语句的后面在加一个无效语句,执行时会弹出错误msg框,说明函数体内的On error resume Next不能作用到函数体外。
以上是使用On error resume Next的一些体会,如果了解了上面两点,就可以较好的使用错误处理的功能了。
http://blog.csdn.net/zmxj/archive/2009/02/24/3932065.aspx
参考:http://www.meizi.cn/article.asp?id=4
分享到:
相关推荐
VBScript语言提供了两个语句和一个对象来处理“运行时错误”,它们分别是On Error Resume Next语句、On Error Goto 0语句和Err对象。这三者联合使用可以实现灵活的错误处理机制。 一、On Error Resume Next语句 On...
`On Error Resume Next` 是VBScript中用于实现错误处理的一种机制,它允许程序在遇到错误时跳过当前错误,继续执行后面的代码。这种容错技术对于编写健壮的脚本至关重要。 `On Error Resume Next` 的工作原理是,当...
在QTP测试环境中,我们通常使用`On Error Resume Next`来处理可能引发错误的代码段,以确保测试脚本的连续性。例如: ```vbscript On Error Resume Next ' 这里是可能出错的代码 result = objObject.Method() If ...
例如,在尝试打开一个可能不存在的文件时,可以使用`On Error Resume Next`来确保即使文件不存在,程序也不会停止,而是可以执行其他备份操作或者给出错误提示。 其次,`On Error GoTo 0`语句用于关闭当前过程中的...
在VBScript中,基础语法包括变量声明、数据类型(如String、Integer、Boolean等)、流程控制(如If...Then...Else、For...Next、Do...Loop等)、函数调用以及错误处理(On Error语句)。它支持简单的算术运算符和...
3. **错误处理**:通过On Error语句进行错误处理,以及Try...Catch...Finally结构(在VBScript中是On Error Resume Next和On Error GoTo 0)。 4. **ADO(ActiveX Data Objects)**:使用ADODB.Connection和ADODB....
VBScript提供On Error语句进行错误处理,如`On Error Resume Next`会使得程序在遇到错误时继续执行,`On Error GoTo 0`则关闭错误处理。 五、对象和集合 VBScript支持对对象的操作,如WScript对象用于交互式脚本,...
VBScript支持简单的调试工具,如`WScript.Echo`输出调试信息,或者在代码中插入`On Error Resume Next`来启用所有错误的捕获。优化方面,合理使用变量、避免不必要的循环和减少COM组件调用都是提高脚本性能的关键。...
在VBScript中,有一个On Error Resume Next语句,它使脚本解释器忽略运行期错误并继续脚本代码的执行。接着该脚本可以检查Err.Number属性的值,判别是否出现了错误。如果出现错误,返回一个非零值。在ASP3.0中,也...
3. **错误处理**:VBScript 5.5支持On Error语句进行错误处理,可以设置错误处理模式,如On Error Resume Next使程序在出现错误时继续执行,或者On Error GoTo 0关闭错误处理。 4. **日期和时间操作**:Date数据...
On Error Resume Next '继续执行,即使出现错误 '可能产生错误的代码段 If Err.Number <> 0 Then WScript.Echo "An error occurred: " & Err.Description Err.Clear '清除错误 End If ``` 总的来说,VBScript是一...
4. **错误处理**:通过On Error语句可以设置错误处理机制,例如`On Error Resume Next`在发生错误时继续执行,`On Error GoTo 0`则关闭错误处理。 5. **ASP应用**:在Active Server Pages (ASP) 中,VBScript常用于...
- On Error语句用于设置错误处理模式,如On Error Resume Next使程序在错误发生后继续执行。 7. **对象与集合**: - VBScript中的许多功能通过对象来实现,如Request对象用于获取HTTP请求数据,Response对象用于...
`On Error Resume Next`允许程序在出现错误时继续执行,`On Error GoTo 0`则关闭错误处理。 9. **文件I/O**: VBScript提供了`FileOpen`、`FileClose`、`Input#`、`Write#`等函数进行文件读写操作。 10. **HTTP...
- vbScript还支持错误处理机制,可以通过On Error Resume Next、On Error Goto语句来处理运行时错误。 3. **应用场景**: - Web页面的动态内容生成:在服务器端通过ASP使用vbScript来动态生成HTML页面。 - 自动...
可以设置为在遇到错误时立即停止(On Error Resume Next)或跳过错误继续执行(On Error GoTo 0)。 8. **与JavaScript的区别**:虽然两者名字相似,但JavaScript主要运行在客户端浏览器,而VBScript主要在服务器端...
在VBScript中,`On Error Resume Next`语句被用来处理潜在的运行时错误。这使得程序能够在遇到错误后继续执行下一条语句。在这个函数中,它被用来忽略由`Dir$`函数引发的任何错误。 ```vb On Error Resume Next ```...
On Error Resume NextOn Error GoTo 0如果在您的代码中未使用On Error Resume Next语句,所发生的运行时错误将显示错误信息,同时,代码的执行也随之终止。但当你采用它时,就会使程序按照产生错误的语句之后的语句...
VBScript使用On Error语句进行错误处理,可以设置为"On Error Resume Next"(继续执行下一个语句)或"On Error GoTo 0"(关闭错误处理)。Try...Catch...Finally结构在VBScript中不存在,但可以通过编写自定义的错误...
4. **错误处理**:通过`On Error`语句可以设置错误处理方式,如`On Error Resume Next`使程序在发生错误后继续执行,`On Error GoTo 0`则关闭错误处理。 5. **事件驱动编程**:VBScript可以结合HTML和JavaScript...