Information.Err Method

Definition

Contains information about run-time errors.

public:
 static Microsoft::VisualBasic::ErrObject ^ Err();
public static Microsoft.VisualBasic.ErrObject Err ();
static member Err : unit -> Microsoft.VisualBasic.ErrObject
Public Function Err () As ErrObject

Returns

Contains information about run-time errors.

Examples

This example uses the properties of the Err object in constructing an error-message dialog box. Notice that if you use the Clear method first, when you generate a Visual Basic error with the Raise method, Visual Basic's default values become the properties of the Err object.

Dim Msg As String
' If an error occurs, construct an error message.
On Error Resume Next   ' Defer error handling.
Err.Clear()
Err.Raise(6)   ' Generate an "Overflow" error.
' Check for error, then show message.
If Err.Number <> 0 Then
  Msg = "Error # " & Str(Err.Number) & " was generated by " &
        Err.Source & ControlChars.CrLf & Err.Description
  MsgBox(Msg, MsgBoxStyle.Information, "Error")
End If

Remarks

The properties of the Err object are set by the generator of an error - Visual Basic, an object, or the programmer.

When a run-time error occurs, the properties of the Err object are filled with information that uniquely identifies the error and that you can use to handle the error. To generate a run-time error in your code, use the Raise method.

The Err object's properties are reset to zero or zero-length strings ("") after an Exit Sub, Exit Function, Exit Property, or Resume Next statement within an error-handling routine. Using any form of the Resume statement outside of an error-handling routine will not reset the Err object's properties. You can use the Clear method to explicitly reset Err.

Use the Raise method rather than the Error statement to generate run-time errors for system errors and class modules. Your decision about whether to use the Raise method in other code depends on the richness of the information you want to return.

The Err object is an intrinsic object with global scope. Therefore, you do not need to create an instance of it in your code.

Applies to

See also