Freigeben über


SEHException-Klasse

 

Stellt SEH-Fehler (Structured Exception Handler, strukturierter Ausnahmehandler) dar.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

Vererbungshierarchie

System.Object
  System.Exception
    System.SystemException
      System.Runtime.InteropServices.ExternalException
        System.Runtime.InteropServices.SEHException

Syntax

[SerializableAttribute]
[ComVisibleAttribute(true)]
public class SEHException : ExternalException
[SerializableAttribute]
[ComVisibleAttribute(true)]
public ref class SEHException : ExternalException
[<SerializableAttribute>]
[<ComVisibleAttribute(true)>]
type SEHException = 
    class
        inherit ExternalException
    end
<SerializableAttribute>
<ComVisibleAttribute(True)>
Public Class SEHException
    Inherits ExternalException

Konstruktoren

Name Beschreibung
System_CAPS_pubmethod SEHException()

Initialisiert eine neue Instanz der SEHException-Klasse.

System_CAPS_protmethod SEHException(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der SEHException -Klasse aus Serialisierungsdaten.

System_CAPS_pubmethod SEHException(String)

Initialisiert eine neue Instanz der SEHException -Klasse mit einer angegebenen Meldung.

System_CAPS_pubmethod SEHException(String, Exception)

Initialisiert eine neue Instanz der SEHException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat.

Eigenschaften

Name Beschreibung
System_CAPS_pubproperty Data

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen über die Ausnahme bereitstellen.(Geerbt von „Exception“.)

System_CAPS_pubproperty ErrorCode

Ruft das HRESULT des Fehlers ab.(Geerbt von „ExternalException“.)

System_CAPS_pubproperty HelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.(Geerbt von „Exception“.)

System_CAPS_pubproperty HResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.(Geerbt von „Exception“.)

System_CAPS_pubproperty InnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.(Geerbt von „Exception“.)

System_CAPS_pubproperty Message

Ruft eine Meldung ab, die die aktuelle Ausnahme beschreibt.(Geerbt von „Exception“.)

System_CAPS_pubproperty Source

Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest.(Geerbt von „Exception“.)

System_CAPS_pubproperty StackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.(Geerbt von „Exception“.)

System_CAPS_pubproperty TargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.(Geerbt von „Exception“.)

Methoden

Name Beschreibung
System_CAPS_pubmethod CanResume()

Gibt an, ob die Ausnahme wiederhergestellt werden kann, ob der Code kann weiterhin an der Stelle, an der die Ausnahme ausgelöst wurde.

System_CAPS_pubmethod Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethod Finalize()

Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird.(Geerbt von „Object“.)

System_CAPS_pubmethod GetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die ursprüngliche Ursache für eine oder mehrere nachfolgende Ausnahmen ist.(Geerbt von „Exception“.)

System_CAPS_pubmethod GetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethod GetObjectData(SerializationInfo, StreamingContext)

Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest.(Geerbt von „Exception“.)

System_CAPS_pubmethod GetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.(Geerbt von „Exception“.)

System_CAPS_protmethod MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethod ToString()

Gibt eine Zeichenfolge, die das HRESULT des Fehlers enthält.(Geerbt von „ExternalException“.)

Ereignisse

Name Beschreibung
System_CAPS_protevent SerializeObjectState

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt zu erstellen, das serialisierte Daten für die Ausnahme enthält.(Geerbt von „Exception“.)

Hinweise

The T:System.Runtime.InteropServices.SEHException class handles SEH errors that are thrown from unmanaged code, but that have not been mapped to another .NET Framework exception. The T:System.Runtime.InteropServices.SEHException class also corresponds to the HRESULTE_FAIL (0x80004005).

The .NET Framework often encounters unmanaged SEH exceptions that are automatically mapped to managed equivalents. There are two common unmanaged SEH exceptions:

  • STATUS_NO_MEMORY exceptions are automatically mapped to the OutOfMemoryException class.

  • STATUS_ACCESS_VIOLATION exceptions are automatically mapped as follows:

    • If legacyNullReferencePolicy is applied, all access violations are mapped to the T:System.NullReferenceException class.

    • If the address at which the read/write was attempted is not in JIT-compiled code, the exception is mapped to the T:System.AccessViolationException class.

    • If the address at which the read/write was attempted is in JIT-compiled code, but it is not in the OS Null partition area, the exception is mapped to the T:System.AccessViolationException class.

    • If there is no legacyNullReferencePolicy, and the address at which the read/write was attempted is in JIT-compiled code and in the OS Null partition area, the exception is mapped to the T:System.NullReferenceException class.

Any SEH exception that is not automatically mapped to a specific exception is mapped to the T:System.Runtime.InteropServices.SEHException class by default.

For more information, search on "unmanaged exceptions" and "Structured Exception Handling" in the MSDN Library.

Note that the T:System.Runtime.InteropServices.SEHException class does not cause unmanaged C++ exception destructors to be called. To ensure that unmanaged C++ exception destructors are called, use the following syntax in the catch block.

[Visual Basic]

Catch 
     ' Handle catch here.
End Try

[C#]

catch
{
     // Handle catch here.
}

[C++]

catch(…)
{
     // Handle catch here.
} 

Versionsinformationen

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 8.0
Windows Phone
Verfügbar seit 8.1

Threadsicherheit

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Siehe auch

Exception
System.Runtime.InteropServices-Namespace
Behandeln und Auslösen von Ausnahmen
How to: Map HRESULTs and Exceptions

Zurück zum Anfang