Raise-Methode (Err-Objekt)

Aktualisiert: November 2007

Generiert einen Laufzeitfehler; kann an Stelle der Error-Anweisung verwendet werden.

Public Sub Raise( _
   ByVal Number As Integer, _
   Optional ByVal Source As Object = Nothing, _
   Optional ByVal Description As Object = Nothing, _
   Optional ByVal HelpFile As Object = Nothing, _
   Optional ByVal HelpContext As Object = Nothing _
)

Parameter

  • Number
    Erforderlich. Eine ganze Zahl des Typs Long, welche die Art des Fehlers angibt. Visual Basic-Fehler liegen im Bereich 0 – 65535: Der Bereich 0 – 512 ist für Systemfehler reserviert; der Bereich 513 – 65535 steht für benutzerdefinierte Fehler zur Verfügung. Wenn Sie für die Number-Eigenschaft in einem Klassenmodul einen eigenen Fehlercode festlegen möchten, müssen Sie die Fehlercodenummer zur vbObjectError-Konstanten addieren. Um beispielsweise die Fehlernummer 513 zu generieren, weisen Sie der Number-Eigenschaft vbObjectError + 513 zu.

  • Source
    Ein String-Ausdruck, der das Objekt oder die Anwendung bezeichnet, das oder die den Fehler ausgelöst hat. Wenn Sie diese Eigenschaft für ein Objekt festlegen, verwenden Sie das Format Projekt.Klasse. Wenn Source nicht angegeben wird, wird die Prozess-ID des aktuellen Visual Basic-Projekts verwendet.

  • Description
    Optional. Ein String-Ausdruck, der den Fehler beschreibt. Wenn kein Ausdruck angegeben wird, wird der Wert in der Number-Eigenschaft überprüft. Wenn er dem Code eines Visual Basic-Laufzeitfehlers zugeordnet werden kann, wird die Zeichenfolge, die von der Error-Funktion zurückgegeben wird, als Description-Eigenschaft verwendet. Wenn kein Visual Basic-Fehler der Number-Eigenschaft entspricht, wird die Fehlermeldung "Anwendungs- oder objektdefinierter Fehler" verwendet.

  • HelpFile
    Optional. Die vollständige Pfadangabe zur Hilfedatei, in der sich eine Beschreibung zu diesem Fehler befindet. Wenn dieser Teil nicht angegeben wird, verwendet Visual Basic die vollständigen Angaben zu Laufwerk, Pfad und Dateiname der Visual Basic-Hilfedatei.

  • HelpContext
    Optional. Die Kontext-ID, die ein Thema innerhalb von HelpFile angibt, das Hilfeinformationen zu diesem Fehler bereitstellt. Wenn dieser Teil nicht angegeben wird, wird die Kontext-ID der Visual Basic-Hilfedatei verwendet, die der entsprechenden Number-Eigenschaft (sofern vorhanden) für diesen Fehler entspricht.

Ausnahmen

Ausnahmetyp

Fehlernummer

Bedingung

ArgumentException

5

Number ist größer als 65535.

Beachten Sie die Spalte "Fehlernummer", wenn Sie Visual Basic 6.0-Anwendungen aktualisieren, die eine unstrukturierte Fehlerbehandlung verwenden. (Sie können die Fehlernummer mit der Number-Eigenschaft (Err-Objekt) vergleichen.) Wenn möglich, sollten Sie jedoch erwägen, eine solche Fehlersteuerung durch eine Übersicht über die strukturierte Ausnahmebehandlung für Visual Basic zu ersetzen.

Hinweise

Alle Raise-Argumente mit Ausnahme von Number sind optional. Wenn Sie optionale Argumente nicht angeben und die Eigenschafteneinstellungen des Err-Objekts Werte enthalten, die noch nicht gelöscht wurden, werden diese Werte für den Fehler verwendet.

Weil das Err-Objekt umfangreichere Informationen bereitstellt als beim Generieren von Fehlern mithilfe der Error-Anweisung ausgegeben werden, ist es beim Schreiben von Klassenmodulen hilfreich, Raise zum Generieren von Fehlern zu verwenden. Beispielsweise kann mit der Raise-Methode die Quelle, die den Fehler generiert, in der Source-Eigenschaft angegeben werden. Es kann auch auf die Onlinehilfe für den Fehler verwiesen werden usw.

Beispiel

In diesem Beispiel wird mit der Raise-Methode des Err-Objekts ein Fehler innerhalb einer Funktion generiert, die in Visual Basic geschrieben wurde. Die aufrufende Funktion kann den Fehler abfangen und den Benutzern in einem Meldungsfeld anzeigen.

Const WidthError As Integer = 1
Const WidthHelp As Object = 101

Sub TestWidth(ByVal width As Integer)
  If width > 1000 Then
      Err.Raise(vbObjectError + 512 + WidthError, "TestWidth", _
      "Width must be less than 1000.", "HelpFile.hlp", WidthHelp)
  End If
End Sub

Sub CallingProcedure()
  Try
    TestWidth(2000)
  Catch ex As Exception
    MsgBox(ex.Message)
  End Try
End Sub

Anforderungen

Namespace:Microsoft.VisualBasic

**Modul:**ErrObject

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Siehe auch

Referenz

Err-Objekt (Visual Basic)

Clear-Methode (Err-Objekt)

Description-Eigenschaft (Err-Objekt)

Error-Anweisung

HelpContext-Eigenschaft (Err-Objekt)

HelpFile-Eigenschaft (Err-Objekt)

LastDllError-Eigenschaft (Err-Objekt)

Number-Eigenschaft (Err-Objekt)

On Error-Anweisung (Visual Basic)

Source-Eigenschaft (Err-Objekt)

ArgumentException