SEHException Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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
- 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_MEMORYas exceções são automaticamente atribuídas à OutOfMemoryException classe.STATUS_ACCESS_VIOLATIONAs exceções são automaticamente mapeadas da seguinte forma:- Se
legacyNullReferencePolicyfor 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.
- Se
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 |
| 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) |