SEHException Klas

Definitie

Vertegenwoordigt SEH-fouten (Structured Exception Handling).

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
Overname
SEHException
Overname
Kenmerken

Opmerkingen

De klasse SEHException verwerkt SEH-fouten die worden gegenereerd uit niet-beheerde code, maar die niet zijn toegewezen aan een andere .NET Framework-uitzondering. De SEHException klasse komt ook overeen met de HRESULTE_FAIL (0x80004005).

.NET vaak onbeheerde SEH-uitzonderingen tegenkomt die automatisch worden toegewezen aan beheerde equivalenten. Er zijn twee veelvoorkomende onbeheerde SEH-uitzonderingen:

  • STATUS_NO_MEMORY uitzonderingen worden automatisch toegewezen aan de OutOfMemoryException klasse.

  • STATUS_ACCESS_VIOLATION uitzonderingen worden automatisch als volgt toegewezen:

    • Als legacyNullReferencePolicy dit wordt toegepast, worden alle toegangsschendingen toegewezen aan de NullReferenceException klasse.
    • Als het adres waarop de poging tot lezen/schrijven is uitgevoerd, zich niet in de JIT-gecompileerde code bevindt, wordt de uitzondering toegewezen aan de AccessViolationException klasse.
    • Als het adres waarop de lees-/schrijfbewerking is uitgevoerd zich in JIT-gecompileerde code bevindt, maar zich niet in het partitiegebied Null van het besturingssysteem bevindt, wordt de uitzondering toegewezen aan de AccessViolationException klasse.
    • Als er geen legacyNullReferencePolicyis en het adres waarop de lees-/schrijfbewerking is uitgevoerd, zich in de JIT-gecompileerde code bevindt en in het besturingssysteem Null-partitiegebied, wordt de uitzondering toegewezen aan de NullReferenceException klasse.

Elke SEH-uitzondering die niet automatisch aan een specifieke uitzondering wordt toegewezen, wordt standaard toegewezen aan de SEHException klasse.

Houd er rekening mee dat de SEHException klasse geen niet-beheerde C++-uitzonderingsdestructors aangeroepen heeft. Gebruik de volgende syntaxis in het catch blok om ervoor te zorgen dat onbeheerde C++-uitzonderingsdestructors worden aangeroepen.

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

Constructors

Name Description
SEHException()

Initialiseert een nieuw exemplaar van de SEHException klasse.

SEHException(SerializationInfo, StreamingContext)
Verouderd.

Initialiseert een nieuw exemplaar van de SEHException klasse op basis van serialisatiegegevens.

SEHException(String, Exception)

Initialiseert een nieuw exemplaar van de SEHException klasse met een opgegeven foutbericht en een verwijzing naar de binnenste uitzondering die de oorzaak van deze uitzondering is.

SEHException(String)

Initialiseert een nieuw exemplaar van de SEHException klasse met een opgegeven bericht.

Eigenschappen

Name Description
Data

Hiermee haalt u een verzameling sleutel-waardeparen op die aanvullende door de gebruiker gedefinieerde informatie over de uitzondering bieden.

(Overgenomen van Exception)
ErrorCode

Hiermee wordt de HRESULT fout weergegeven.

(Overgenomen van ExternalException)
HelpLink

Hiermee haalt u een koppeling op naar het Help-bestand dat aan deze uitzondering is gekoppeld.

(Overgenomen van Exception)
HResult

Hiermee wordt HRESULT opgehaald of ingesteld, een gecodeerde numerieke waarde die is toegewezen aan een specifieke uitzondering.

(Overgenomen van Exception)
InnerException

Hiermee haalt u het Exception exemplaar op dat de huidige uitzondering heeft veroorzaakt.

(Overgenomen van Exception)
Message

Hiermee wordt een bericht weergegeven waarin de huidige uitzondering wordt beschreven.

(Overgenomen van Exception)
Source

Hiermee wordt de naam van de toepassing of het object dat de fout veroorzaakt, opgehaald of ingesteld.

(Overgenomen van Exception)
StackTrace

Hiermee haalt u een tekenreeksweergave van de directe frames op de aanroepstack op.

(Overgenomen van Exception)
TargetSite

Hiermee haalt u de methode op waarmee de huidige uitzondering wordt gegenereerd.

(Overgenomen van Exception)

Methoden

Name Description
CanResume()

Hiermee wordt aangegeven of de uitzondering kan worden hersteld en of de code kan worden voortgezet vanaf het punt waarop de uitzondering is opgetreden.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetBaseException()

Wanneer deze wordt overschreven in een afgeleide klasse, retourneert u de Exception hoofdoorzaak van een of meer volgende uitzonderingen.

(Overgenomen van Exception)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetObjectData(SerializationInfo, StreamingContext)
Verouderd.

Wanneer deze wordt overschreven in een afgeleide klasse, stelt u de SerializationInfo met informatie over de uitzondering in.

(Overgenomen van Exception)
GetType()

Hiermee haalt u het runtimetype van het huidige exemplaar op.

(Overgenomen van Exception)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Hiermee maakt en retourneert u een tekenreeksweergave van de huidige uitzondering.

(Overgenomen van Exception)
ToString()

Retourneert een tekenreeks die het HRESULT van de fout bevat.

(Overgenomen van ExternalException)

gebeurtenis

Name Description
SerializeObjectState
Verouderd.

Treedt op wanneer een uitzondering wordt geserialiseerd om een uitzonderingsstatusobject te maken dat geserialiseerde gegevens over de uitzondering bevat.

(Overgenomen van Exception)

Van toepassing op

Zie ook