'程序的错误类型
'编译错误(Compile Error)是在编译应用程序过程中发现的错误。这类错误一般是由于不正确的代码结构而产生
'运行错误(RunTime Error)指应用程序在运行时发生的错误,例如,程序代码执行了非法操作或某些操作失败。发生这类错误时,
' 程序的语法一般没有错误,并且编译时也能通过,只在运行时发现。如被零除,溢出错误(变量赋值不当)
'逻辑错误(Logic Error)指应用程序的运行结果与预期结果不相同。此时,程序中没有语法错误和编译错误,程序也可以运行,但运行结果不对。
' 这种错误通常是由于程序中存在逻辑上的缺陷而引起。
DividedByZero
' 遇到错误跳出
Sub DividedByZero
Dim a, b,c
a =10 : b=0
c = cDbl(a/b)
b =3
c = cDbl(a/b)
Print c
End Sub
'On Error Resume Next
' 遇到错误继续,把系统错误记录下来
Sub DividedByZero1
On error resume next
Dim a, b,c
a =10 : b=0
c = cDbl(a/b)
Print cStr(err.number) & " " & err.description
b =3
c = cDbl(a/b)
Print c
End Sub
' 遇到错误继续,抛出自己定义的错误
DividedByZero2
'Error number1: 11 error description: 被零除 at source of: Microsoft VBScript 运行时错误
'Error number2: 1000 error description: Divided by zero error defined by Jerry at source of: My Error Source
'3.33333333333333
Sub DividedByZero2
On error resume next
Dim a, b,c
a =10 : b=0
c = cDbl(a/b)
Print "Error number1: " & cStr(err.number) & " error description: " & err.description & " at source of: "& err.source
' Err.Raise err.Number, error.source, error.description
Err.Raise 1000, "My Error Source", "Divided by zero error defined by Jerry " '自定义,错误
Print "Error number2: " & cStr(err.number) & " error description: " & err.description & " at source of: "& err.source
Err.Clear '清除错误。
b =3
c = cDbl(a/b)
Print c
End Sub
错误号(即Err.Number)的详解
Number:1
Description:应用程序定义的错误或对象定义的错误。
Number:2
Description:应用程序定义的错误或对象定义的错误。
Number:3
Description:此错误号已过时,不再使用。
Number:4
Description:应用程序定义的错误或对象定义的错误。
Number:5
Description:过程调用或参数无效。
Number:6
Description:溢出。
Number:7
Description:内存不足。
Number:8
Description:应用程序定义的错误或对象定义的错误。
Number:9
Description:下标超出范围。
Number:10
Description:此数组被固定或临时锁定。
Number:11
Description:被零除。
Number:12
Description:应用程序定义的错误或对象定义的错误。
Number:13
Description:类型不匹配。
Number:14
Description:字符串空间不足。
Number:15
Description:应用程序定义的错误或对象定义的错误。
Number:16
Description:表达式过于复杂。
Number:17
Description:无法执行请求的操作。
Number:18
Description:发生了用户中断。
Number:19
Description:应用程序定义的错误或对象定义的错误。
Number:20
Description:无错误继续执行。
Number:21
Description:应用程序定义的错误或对象定义的错误。
Number:22
Description:应用程序定义的错误或对象定义的错误。
Number:23
Description:应用程序定义的错误或对象定义的错误。
Number:24
Description:应用程序定义的错误或对象定义的错误。
Number:25
Description:应用程序定义的错误或对象定义的错误。
Number:26
Description:应用程序定义的错误或对象定义的错误。
Number:27
Description:应用程序定义的错误或对象定义的错误。
Number:28
Description:堆栈空间不足。
Number:29
Description:应用程序定义的错误或对象定义的错误。
Number:30
Description:应用程序定义的错误或对象定义的错误。
Number:31
Description:应用程序定义的错误或对象定义的错误。
Number:32
Description:应用程序定义的错误或对象定义的错误。
Number:33
Description:应用程序定义的错误或对象定义的错误。
Number:34
Description:应用程序定义的错误或对象定义的错误。
Number:35
Description:未定义 Sub 或 Function。
Number:36
Description:应用程序定义的错误或对象定义的错误。
Number:37
Description:应用程序定义的错误或对象定义的错误。
Number:38
Description:应用程序定义的错误或对象定义的错误。
Number:39
Description:应用程序定义的错误或对象定义的错误。
Number:40
Description:应用程序定义的错误或对象定义的错误。
Number:41
Description:应用程序定义的错误或对象定义的错误。
Number:42
Description:应用程序定义的错误或对象定义的错误。
Number:43
Description:应用程序定义的错误或对象定义的错误。
Number:44
Description:应用程序定义的错误或对象定义的错误。
Number:45
Description:应用程序定义的错误或对象定义的错误。
Number:46
Description:应用程序定义的错误或对象定义的错误。
Number:47
Description:DLL 应用程序客户端太多。
Number:48
Description:加载 DLL 时出错。
Number:49
Description:错误的 DLL 调用约定。
Number:50
Description:应用程序定义的错误或对象定义的错误。
Number:51
Description:内部错误。
Number:52
Description:文件名或编号错误。
Number:53
Description:未找到文件。
Number:54
Description:错误的文件模式。
Number:55
Description:文件已打开。
Number:56
Description:应用程序定义的错误或对象定义的错误。
Number:57
Description:设备 I/O 错误。
Number:58