SEHException Classe

Definição

Representa erros de gestão estruturada de exceções (SEH).

public ref class SEHException : Exception
public ref class SEHException : System::Runtime::InteropServices::ExternalException
public class SEHException : Exception
[System.Serializable]
public class SEHException : System.Runtime.InteropServices.ExternalException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class SEHException : System.Runtime.InteropServices.ExternalException
public class SEHException : System.Runtime.InteropServices.ExternalException
type SEHException = class
    inherit Exception
[<System.Serializable>]
type SEHException = class
    inherit ExternalException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SEHException = class
    inherit ExternalException
type SEHException = class
    inherit ExternalException
Public Class SEHException
Inherits Exception
Public Class SEHException
Inherits ExternalException
Herança
SEHException
Herança
Atributos

Observações

A classe SEHException lida com erros SEH que são lançados a partir de código não gerido, mas que não foram mapeados para outra exceção .NET Framework. A SEHException classe também corresponde ao HRESULTE_FAIL (0x80004005).

O .NET frequentemente encontra exceções SEH não geridas que são automaticamente mapeadas para equivalentes geridos. Existem duas exceções comuns à SEH não gerida:

  • STATUS_NO_MEMORY as exceções são automaticamente atribuídas à OutOfMemoryException classe.

  • STATUS_ACCESS_VIOLATION As exceções são automaticamente mapeadas da seguinte forma:

    • Se legacyNullReferencePolicy for aplicada, todas as violações de acesso são mapeadas para a NullReferenceException classe.
    • Se o endereço onde a leitura/escrita foi tentada não estiver em código compilado por JIT, a exceção é mapeada para a AccessViolationException classe.
    • Se o endereço onde a leitura/escrita foi tentada estiver em código compilado por JIT, mas não na área de partição OS Null, a exceção é mapeada para a AccessViolationException classe.
    • Se não legacyNullReferencePolicyhouver , e o endereço onde a leitura/escrita foi tentada estiver em código compilado por JIT e na área de partição OS Null, a exceção é mapeada para a NullReferenceException classe.

Qualquer exceção SEH que não seja automaticamente mapeada para uma exceção específica é mapeada para a SEHException classe por defeito.

Note-se que a SEHException classe não faz com que sejam chamados destrutores de exceções C++ não geridos. Para garantir que são chamados destrutores de exceções C++ não geridos, utilize a seguinte sintaxe no catch bloco.

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

Construtores

Name Description
SEHException()

Inicializa uma nova instância da SEHException classe.

SEHException(SerializationInfo, StreamingContext)

Inicializa uma nova instância da SEHException classe a partir de dados de serialização.

SEHException(String, Exception)

Inicializa uma nova instância da SEHException classe com uma mensagem de erro especificada e uma referência à exceção interna que é a causa dessa exceção.

SEHException(String)

Inicializa uma nova instância da SEHException classe com uma mensagem especificada.

Propriedades

Name Description
Data

Obtém uma coleção de pares chave/valor que fornecem informação adicional definida pelo utilizador sobre a exceção.

(Herdado de Exception)
ErrorCode

Obtém o HRESULT erro do erro.

(Herdado de ExternalException)
HelpLink

Obtém ou define um link para o ficheiro de ajuda associado a esta exceção.

(Herdado de Exception)
HResult

Recebe ou define HRESULT, um valor numérico codificado atribuído a uma exceção específica.

(Herdado de Exception)
InnerException

Obtém a Exception instância que causou a exceção atual.

(Herdado de Exception)
Message

Recebe uma mensagem que descreve a exceção atual.

(Herdado de Exception)
Source

Obtém ou define o nome do aplicativo ou o objeto que causa o erro.

(Herdado de Exception)
StackTrace

Obtém uma representação string dos frames imediatos na stack de chamadas.

(Herdado de Exception)
TargetSite

Obtém o método que lança a exceção atual.

(Herdado de Exception)

Métodos

Name Description
CanResume()

Indica se a exceção pode ser recuperada e se o código pode continuar a partir do ponto em que a exceção foi lançada.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetBaseException()

Quando sobrescrito numa classe derivada, devolve o Exception que é a causa raiz de uma ou mais exceções subsequentes.

(Herdado de Exception)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Quando sobreposto numa classe derivada, define a SerializationInfo informação com sobre a exceção.

(Herdado de Exception)
GetType()

Obtém o tipo de execução da instância atual.

(Herdado de Exception)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Cria e devolve uma representação string da exceção atual.

(Herdado de Exception)
ToString()

Devolve uma string que contém o HRESULT do erro.

(Herdado de ExternalException)

evento

Name Description
SerializeObjectState

Ocorre quando uma exceção é serializada para criar um objeto de estado de exceção que contém dados serializados sobre a exceção.

(Herdado de Exception)

Aplica-se a

Ver também