SEHException Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente les erreurs de gestion des exceptions structurées (SEH).
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
- Héritage
- Attributs
Remarques
La classe SEHException gère les erreurs SEH levées à partir du code non managé, mais qui n’ont pas été mappées à une autre exception .NET Framework. La classe SEHException correspond également au HRESULT
E_FAIL
(0x80004005).
Le .NET Framework rencontre souvent des exceptions SEH non managées qui sont automatiquement mappées à des équivalents managés. Il existe deux exceptions SEH non managées courantes :
STATUS_NO_MEMORY
exceptions sont automatiquement mappées à la classe OutOfMemoryException.STATUS_ACCESS_VIOLATION
exceptions sont automatiquement mappées comme suit :Si
legacyNullReferencePolicy
est appliquée, toutes les violations d’accès sont mappées à la classe NullReferenceException.Si l’adresse à laquelle la lecture/écriture a été tentée n’est pas dans le code compilé par JIT, l’exception est mappée à la classe AccessViolationException.
Si l’adresse à laquelle la lecture/écriture a été tentée est dans le code compilé par JIT, mais qu’elle n’est pas dans la zone de partition Null du système d’exploitation, l’exception est mappée à la classe AccessViolationException.
S’il n’existe aucun
legacyNullReferencePolicy
et que l’adresse à laquelle la lecture/écriture a été tentée est dans le code compilé par JIT et dans la zone de partition Null du système d’exploitation, l’exception est mappée à la classe NullReferenceException.
Toute exception SEH qui n’est pas automatiquement mappée à une exception spécifique est mappée à la classe SEHException par défaut.
Notez que la classe SEHException n’entraîne pas l’appel de destructeurs d’exceptions C++ non managés. Pour vous assurer que les destructeurs d’exceptions C++ non managés sont appelés, utilisez la syntaxe suivante dans le bloc catch
.
Catch
' Handle catch here.
End Try
catch
{
// Handle catch here.
}
catch(…)
{
// Handle catch here.
}
Constructeurs
SEHException() |
Initialise une nouvelle instance de la classe SEHException. |
SEHException(SerializationInfo, StreamingContext) |
Obsolète.
Initialise une nouvelle instance de la classe SEHException à partir des données de sérialisation. |
SEHException(String) |
Initialise une nouvelle instance de la classe SEHException avec un message spécifié. |
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 qui est la cause de cette exception. |
Propriétés
Data |
Obtient une collection de paires clé/valeur qui fournissent des informations supplémentaires définies par l’utilisateur sur l’exception. (Hérité de Exception) |
ErrorCode |
Obtient la |
HelpLink |
Obtient ou définit un lien vers le fichier d’aide associé à cette exception. (Hérité de Exception) |
HResult |
Obtient ou définit HRESULT, valeur numérique codée affectée à une exception spécifique. (Hérité de Exception) |
InnerException |
Obtient l’instance Exception qui a provoqué l’exception actuelle. (Hérité de Exception) |
Message |
Obtient un message qui décrit l’exception actuelle. (Hérité de Exception) |
Source |
Obtient ou définit le nom de l’application ou de l’objet qui provoque l’erreur. (Hérité de Exception) |
StackTrace |
Obtient une représentation sous forme de chaîne des images immédiates sur la pile des appels. (Hérité de Exception) |
TargetSite |
Obtient la méthode qui lève l’exception actuelle. (Hérité de Exception) |
Méthodes
CanResume() |
Indique si l’exception peut être récupérée et si le code peut continuer à partir du point auquel l’exception a été levée. |
Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
GetBaseException() |
En cas de substitution dans une classe dérivée, retourne la Exception qui est la cause racine d’une ou plusieurs exceptions ultérieures. (Hérité de Exception) |
GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Obsolète.
En cas de substitution dans une classe dérivée, définit l'SerializationInfo avec des informations sur l’exception. (Hérité de Exception) |
GetType() |
Obtient le type d’exécution de l’instance actuelle. (Hérité de Exception) |
MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
ToString() |
Crée et retourne une représentation sous forme de chaîne de l’exception actuelle. (Hérité de Exception) |
ToString() |
Retourne une chaîne qui contient le HRESULT de l’erreur. (Hérité de ExternalException) |
Événements
SerializeObjectState |
Obsolète.
Se produit lorsqu’une exception est sérialisée pour créer un objet d’état d’exception qui contient des données sérialisées sur l’exception. (Hérité de Exception) |