Gestion des erreurs dans VBScript
Il existe peu de différence entre les méthodes utilisées en Visual Basic et celles utilisées avec VBScript. La principale différence est que VBScript ne prend pas en charge le concept de gestion des erreurs en continuant l’exécution sur une étiquette. En d’autres termes, vous ne pouvez pas utiliser On Error GoTo
dans VBScript. Au lieu de cela, utilisez On Error Resume Next
et vérifiez à la fois Err.Number et la propriété Nombre de la collection Erreur , comme illustré dans l’exemple suivant :
<!-- 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 -->