|
Visual Basic 中使用的方法与 VBScript 中使用的方法没有什么区别。 主要区别在于,VBScript 不支持在标签上继续执行错误处理的概念。 换句话说,无法在 VBScript 中使用 On Error GoTo。 请改用 On Error Resume Next,然后检查 Err.Number 和 Count 属性的 Errors 集合,如以下示例所示:
- <!-- BeginErrorExampleVBS -->
- <HTML>
- <HEAD>
- <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
- <TITLE>Error Handling Example (VBScript)</TITLE>
- </HEAD>
- <BODY>
-
- <h1>Error Handling Example (VBScript)</h1>
-
- <%
-
- Dim cnn1
- Dim errLoop
- Dim strError
-
- On Error Resume Next
-
- ' Intentionally trigger an error.
- Set cnn1 = Server.CreateObject("ADODB.Connection")
- cnn1.Open "nothing"
-
- If cnn1.Errors.Count > 0 Then
- ' Enumerate Errors collection and display
- ' properties of each Error object.
- For Each errLoop In cnn1.Errors
- strError = "Error #" & errLoop.Number & "<br>" & _
- " " & errLoop.Description & "<br>" & _
- " (Source: " & errLoop.Source & ")" & "<br>" & _
- " (SQL State: " & errLoop.SQLState & ")" & "<br>" & _
- " (NativeError: " & errLoop.NativeError & ")" & "<br>"
- If errLoop.HelpFile = "" Then
- strError = strError & _
- " No Help file available" & _
- "<br><br>"
- Else
- strError = strError & _
- " (HelpFile: " & errLoop.HelpFile & ")" & "<br>" & _
- " (HelpContext: " & errLoop.HelpContext & ")" & _
- "<br><br>"
- End If
-
- Response.Write("<p>" & strError & "</p>")
- Next
- End If
-
- %>
-
- </BODY>
- </HTML>
- <!-- EndErrorExampleVBS -->
复制代码 |
|