SEHException Classe

Définition

Représente des erreurs SEH (Structured Exception Handling).Represents structured exception handling (SEH) errors.

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
Héritage
SEHException
Héritage
Attributs

Remarques

La SEHException classe gère les erreurs SEH qui sont levées à partir du code non managé, mais qui n’ont pas été mappées à une autre exception .NET Framework.The SEHException class handles SEH errors that are thrown from unmanaged code, but that have not been mapped to another .NET Framework exception. La SEHException classe correspond également au HRESULT E_FAIL (0x80004005).The SEHException class also corresponds to the HRESULT E_FAIL (0x80004005).

Le .NET Framework rencontre souvent des exceptions SEH non managées qui sont mappées automatiquement aux équivalents managés.The .NET Framework often encounters unmanaged SEH exceptions that are automatically mapped to managed equivalents. Il existe deux exceptions SEH non managées courantes :There are two common unmanaged SEH exceptions:

  • STATUS_NO_MEMORY les exceptions sont mappées automatiquement à la OutOfMemoryException classe.STATUS_NO_MEMORY exceptions are automatically mapped to the OutOfMemoryException class.

  • STATUS_ACCESS_VIOLATION les exceptions sont mappées automatiquement comme suit :STATUS_ACCESS_VIOLATION exceptions are automatically mapped as follows:

    • Si legacyNullReferencePolicy est appliqué, toutes les violations d’accès sont mappées à la NullReferenceException classe.If legacyNullReferencePolicy is applied, all access violations are mapped to the NullReferenceException class.

    • Si l’adresse à laquelle la lecture/écriture a été tentée n’est pas dans le code compilé juste-à-temps, l’exception est mappée à la AccessViolationException classe.If the address at which the read/write was attempted is not in JIT-compiled code, the exception is mapped to the AccessViolationException class.

    • Si l’adresse à laquelle la lecture/écriture a été tentée est dans le code compilé juste-à-temps, mais qu’elle ne se trouve pas dans la zone de partition du système d’exploitation null, l’exception est mappée à la AccessViolationException classe.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 AccessViolationException class.

    • S’il n’y a aucun legacyNullReferencePolicy , et que l’adresse à laquelle la lecture/écriture a été tentée est dans le code compilé juste-à-temps et dans la zone de partition du système d’exploitation null, l’exception est mappée à la NullReferenceException classe.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 NullReferenceException class.

Toute exception SEH qui n’est pas automatiquement mappée à une exception spécifique est mappée à la SEHException classe par défaut.Any SEH exception that is not automatically mapped to a specific exception is mapped to the SEHException class by default.

Notez que la SEHException classe ne provoque pas l’appel de destructeurs d’exceptions C++ non managées.Note that the SEHException class does not cause unmanaged C++ exception destructors to be called. Pour vous assurer que les destructeurs d’exceptions C++ non managées sont appelés, utilisez la syntaxe suivante dans le catch bloc.To ensure that unmanaged C++ exception destructors are called, use the following syntax in the catch block.

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

Constructeurs

SEHException()

Initialise une nouvelle instance de la classe SEHException.Initializes a new instance of the SEHException class.

SEHException(SerializationInfo, StreamingContext)

Initialise une nouvelle instance de la classe SEHException à partir de données de sérialisation.Initializes a new instance of the SEHException class from serialization data.

SEHException(String)

Initialise une nouvelle instance de la classe SEHException avec le message spécifié.Initializes a new instance of the SEHException class with a specified message.

SEHException(String, Exception)

Initialise une nouvelle instance de la classe SEHException avec un message d'erreur spécifié et une référence à l'exception interne ayant provoqué cette exception.Initializes a new instance of the SEHException class with a specified error message and a reference to the inner exception that is the cause of this exception.

Propriétés

Data

Obtient une collection de paires clé/valeur qui fournissent des informations définies par l'utilisateur supplémentaires sur l'exception.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Hérité de Exception)
ErrorCode

Obtient le HRESULT de l’erreur.Gets the HRESULT of the error.

(Hérité de ExternalException)
HelpLink

Obtient ou définit un lien vers le fichier d'aide associé à cette exception.Gets or sets a link to the help file associated with this exception.

(Hérité de Exception)
HResult

Obtient ou définit HRESULT, valeur numérique codée qui est assignée à une exception spécifique.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Hérité de Exception)
InnerException

Obtient l'instance Exception qui a provoqué l'exception actuelle.Gets the Exception instance that caused the current exception.

(Hérité de Exception)
Message

Obtient un message qui décrit l'exception active.Gets a message that describes the current exception.

(Hérité de Exception)
Source

Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.Gets or sets the name of the application or the object that causes the error.

(Hérité de Exception)
StackTrace

Obtient une représentation sous forme de chaîne des frames immédiats sur la pile des appels.Gets a string representation of the immediate frames on the call stack.

(Hérité de Exception)
TargetSite

Obtient la méthode qui lève l'exception actuelle.Gets the method that throws the current exception.

(Hérité de Exception)

Méthodes

CanResume()

Indique si l'exception est récupérable et si l'exécution du code peut se poursuivre à partir de l'emplacement où l'exception a été levée.Indicates whether the exception can be recovered from, and whether the code can continue from the point at which the exception was thrown.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetBaseException()

En cas de substitution dans une classe dérivée, retourne la Exception qui est à l'origine d'une ou de plusieurs exceptions ultérieures.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Hérité de Exception)
GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)

En cas de substitution dans une classe dérivée, définit SerializationInfo avec des informations sur l'exception.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Hérité de Exception)
GetType()

Obtient le type au moment de l'exécution de l'instance actuelle.Gets the runtime type of the current instance.

(Hérité de Exception)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
ToString()

Crée et retourne une chaîne représentant l'exception actuelle.Creates and returns a string representation of the current exception.

(Hérité de Exception)
ToString()

Retourne une chaîne qui contient le HRESULT de l'erreur.Returns a string that contains the HRESULT of the error.

(Hérité de ExternalException)

Événements

SerializeObjectState

Se produit quand une exception est sérialisée pour créer un objet d'état d'exception qui contient des données sérialisées concernant l'exception.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Hérité de Exception)

S’applique à

Voir aussi