SEHException Osztály

Definíció

Strukturált kivételkezelési (SEH) hibákat jelöl.

public ref class SEHException : Exception
public ref class SEHException : System::Runtime::InteropServices::ExternalException
public class SEHException : Exception
public class SEHException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
public class SEHException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class SEHException : System.Runtime.InteropServices.ExternalException
type SEHException = class
    inherit Exception
type SEHException = class
    inherit ExternalException
[<System.Serializable>]
type SEHException = class
    inherit ExternalException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SEHException = class
    inherit ExternalException
Public Class SEHException
Inherits Exception
Public Class SEHException
Inherits ExternalException
Öröklődés
SEHException
Öröklődés
Attribútumok

Megjegyzések

A SEHException osztály kezeli a nem felügyelt kódból származó, de egy másik .NET-keretrendszer kivételére leképezett SEH-hibákat. Az SEHException osztály a (0x80004005) is megfelel HRESULTE_FAIL .

.NET gyakran előfordulnak nem felügyelt SEH-kivételek, amelyek automatikusan felügyelt megfelelőkre vannak leképezve. Két gyakori nem felügyelt SEH-kivétel létezik:

  • STATUS_NO_MEMORY a kivételek automatikusan az OutOfMemoryException osztályhoz vannak leképezve.

  • STATUS_ACCESS_VIOLATION a kivételek automatikusan az alábbiak szerint vannak leképezve:

    • Ha legacyNullReferencePolicy alkalmazva van, az összes hozzáférés-szabálysértés az NullReferenceException osztályhoz lesz leképezve.
    • Ha az olvasási/írási kísérlet címe nem JIT által lefordított kódban található, a kivétel az AccessViolationException osztályhoz lesz leképezve.
    • Ha az olvasási/írási kísérlet címe JIT által lefordított kódban található, de nem az OS Null partícióterületen található, a kivétel az AccessViolationException osztályhoz van rendelve.
    • Ha nincs legacyNullReferencePolicy, és az olvasási/írási kísérlet címe JIT által lefordított kódban és az OS Null partícióterületen található, a kivétel az NullReferenceException osztályra van leképezve.

Minden olyan SEH-kivétel, amely nem felel meg automatikusan egy adott kivételnek, alapértelmezés szerint az SEHException osztályhoz van leképezve.

Vegye figyelembe, hogy az SEHException osztály nem okozza a nem felügyelt C++ kivétel-destruktorok meghívását. A nem felügyelt C++ kivétel-destruktorok meghívásának biztosításához használja a blokk alábbi szintaxisát catch .

Catch
     ' Handle catch here.
End Try
catch
{
     // Handle catch here.
}
catch(…)
{
     // Handle catch here.
}

Konstruktorok

Name Description
SEHException()

Inicializálja a SEHException osztály új példányát.

SEHException(SerializationInfo, StreamingContext)
Elavult.

Inicializálja az osztály új példányát a SEHException szerializálási adatokból.

SEHException(String, Exception)

Inicializálja az SEHException osztály új példányát egy megadott hibaüzenettel és a kivétel okaként szolgáló belső kivételre mutató hivatkozással.

SEHException(String)

Inicializálja az SEHException osztály új példányát egy megadott üzenettel.

Tulajdonságok

Name Description
Data

Lekéri a kulcs-/érték párok gyűjteményét, amelyek további, felhasználó által definiált információkat biztosítanak a kivételről.

(Öröklődés forrása Exception)
ErrorCode

Lekéri a HRESULT hibát.

(Öröklődés forrása ExternalException)
HelpLink

Lekéri vagy beállítja a kivételhez társított súgófájlra mutató hivatkozást.

(Öröklődés forrása Exception)
HResult

Lekéri vagy beállítja a HRESULT-ot, egy kódolt numerikus értéket, amely egy adott kivételhez van hozzárendelve.

(Öröklődés forrása Exception)
InnerException

Lekéri az Exception aktuális kivételt okozó példányt.

(Öröklődés forrása Exception)
Message

Az aktuális kivételt leíró üzenet jelenik meg.

(Öröklődés forrása Exception)
Source

Lekéri vagy beállítja az alkalmazás vagy a hibát okozó objektum nevét.

(Öröklődés forrása Exception)
StackTrace

Lekéri a hívásverem közvetlen kereteinek sztringképét.

(Öröklődés forrása Exception)
TargetSite

Lekéri az aktuális kivételt okozó metódust.

(Öröklődés forrása Exception)

Metódusok

Name Description
CanResume()

Azt jelzi, hogy a kivétel helyreállítható-e, és hogy a kód folytatódhat-e attól a ponttól kezdve, ahonnan a kivétel ki lett dobva.

Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetBaseException()

Ha egy származtatott osztály felül van bírálva, egy Exception vagy több későbbi kivétel kiváltó okát adja vissza.

(Öröklődés forrása Exception)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetObjectData(SerializationInfo, StreamingContext)
Elavult.

Ha felül van bírálva egy származtatott osztályban, a SerializationInfo kivétel adatait adja meg.

(Öröklődés forrása Exception)
GetType()

Lekéri az aktuális példány futtatókörnyezeti típusát.

(Öröklődés forrása Exception)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Létrehozza és visszaadja az aktuális kivétel sztring-ábrázolását.

(Öröklődés forrása Exception)
ToString()

A hiba HRESULT értékét tartalmazó sztringet ad vissza.

(Öröklődés forrása ExternalException)

esemény

Name Description
SerializeObjectState
Elavult.

Akkor fordul elő, ha a kivétel szerializálva van egy kivételállapot-objektum létrehozásához, amely szerializált adatokat tartalmaz a kivételről.

(Öröklődés forrása Exception)

A következőre érvényes:

Lásd még