Compartir a través de


SEHException Clase

Definición

Representa errores de control de excepciones estructurados (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
Herencia
SEHException
Herencia
Atributos

Comentarios

La clase SEHException controla los errores de SEH que se inician desde código no administrado, pero que no se han asignado a otra excepción de .NET Framework. La clase SEHException también corresponde al HRESULTE_FAIL (0x80004005).

.NET Framework suele encontrar excepciones SEH no administradas que se asignan automáticamente a equivalentes administrados. Hay dos excepciones comunes de SEH no administradas:

  • STATUS_NO_MEMORY excepciones se asignan automáticamente a la clase OutOfMemoryException.

  • STATUS_ACCESS_VIOLATION excepciones se asignan automáticamente de la siguiente manera:

    • Si se aplica legacyNullReferencePolicy, todas las infracciones de acceso se asignan a la clase NullReferenceException.

    • Si la dirección en la que se intentó leer y escribir no está en código compilado JIT, la excepción se asigna a la clase AccessViolationException.

    • Si la dirección en la que se intentó leer y escribir está en código compilado JIT, pero no está en el área de partición null del sistema operativo, la excepción se asigna a la clase AccessViolationException.

    • Si no hay ningún legacyNullReferencePolicyy la dirección en la que se intentó leer y escribir está en código compilado JIT y en el área de partición Null del sistema operativo, la excepción se asigna a la clase NullReferenceException.

Cualquier excepción SEH que no se asigna automáticamente a una excepción específica se asigna a la clase SEHException de forma predeterminada.

Tenga en cuenta que la clase SEHException no hace que se llame a los destructores de excepciones de C++ no administrados. Para asegurarse de que se llama a los destructores de excepciones de C++ no administrados, use la sintaxis siguiente en el bloque catch.

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

Constructores

SEHException()

Inicializa una nueva instancia de la clase SEHException.

SEHException(SerializationInfo, StreamingContext)
Obsoletos.

Inicializa una nueva instancia de la clase SEHException a partir de datos de serialización.

SEHException(String)

Inicializa una nueva instancia de la clase SEHException con un mensaje especificado.

SEHException(String, Exception)

Inicializa una nueva instancia de la clase SEHException con un mensaje de error especificado y una referencia a la excepción interna que es la causa de esta excepción.

Propiedades

Data

Obtiene una colección de pares clave-valor que proporcionan información adicional definida por el usuario sobre la excepción.

(Heredado de Exception)
ErrorCode

Obtiene el HRESULT del error.

(Heredado de ExternalException)
HelpLink

Obtiene o establece un vínculo al archivo de ayuda asociado a esta excepción.

(Heredado de Exception)
HResult

Obtiene o establece HRESULT, un valor numérico codificado que se asigna a una excepción específica.

(Heredado de Exception)
InnerException

Obtiene la instancia de Exception que provocó la excepción actual.

(Heredado de Exception)
Message

Obtiene un mensaje que describe la excepción actual.

(Heredado de Exception)
Source

Obtiene o establece el nombre de la aplicación o el objeto que provoca el error.

(Heredado de Exception)
StackTrace

Obtiene una representación de cadena de los fotogramas inmediatos en la pila de llamadas.

(Heredado de Exception)
TargetSite

Obtiene el método que produce la excepción actual.

(Heredado de Exception)

Métodos

CanResume()

Indica si se puede recuperar la excepción y si el código puede continuar desde el punto en el que se produjo la excepción.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetBaseException()

Cuando se reemplaza en una clase derivada, devuelve el Exception que es la causa principal de una o varias excepciones posteriores.

(Heredado de Exception)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoletos.

Cuando se reemplaza en una clase derivada, establece el SerializationInfo con información sobre la excepción.

(Heredado de Exception)
GetType()

Obtiene el tipo de tiempo de ejecución de la instancia actual.

(Heredado de Exception)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Crea y devuelve una representación de cadena de la excepción actual.

(Heredado de Exception)
ToString()

Devuelve una cadena que contiene el valor HRESULT del error.

(Heredado de ExternalException)

Eventos

SerializeObjectState
Obsoletos.

Se produce cuando se serializa una excepción para crear un objeto de estado de excepción que contiene datos serializados sobre la excepción.

(Heredado de Exception)

Se aplica a

Consulte también