SEHException Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa erros de SEH (Manipulação de Exceção Estruturada).
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
- Herança
- Herança
- Atributos
Comentários
A SEHException classe lida com erros SEH gerados de código não gerenciado, mas que não foram mapeados para outra exceção .NET Framework. A SEHException classe também corresponde ao HRESULT
E_FAIL
(0x80004005).
O .NET Framework geralmente encontra exceções SEH não gerenciadas que são mapeadas automaticamente para equivalentes gerenciados. Há duas exceções SEH não gerenciadas comuns:
STATUS_NO_MEMORY
as exceções são mapeadas automaticamente para a OutOfMemoryException classe .STATUS_ACCESS_VIOLATION
As exceções são mapeadas automaticamente da seguinte maneira:Se
legacyNullReferencePolicy
for aplicado, todas as violações de acesso serão mapeadas para a NullReferenceException classe .Se o endereço no qual a leitura/gravação foi tentada não estiver no código compilado por JIT, a exceção será mapeada para a AccessViolationException classe .
Se o endereço no qual a leitura/gravação foi tentada estiver no código compilado por JIT, mas não estiver na área de partição Null do sistema operacional, a exceção será mapeada para a AccessViolationException classe .
Se não houver ,
legacyNullReferencePolicy
e o endereço no qual a leitura/gravação foi tentada estiver no código compilado por JIT e na área de partição Null do sistema operacional, a exceção será mapeada para a NullReferenceException classe .
Qualquer exceção SEH que não seja mapeada automaticamente para uma exceção específica é mapeada para a SEHException classe por padrão.
Observe que a SEHException classe não faz com que destruidores de exceção C++ não gerenciados sejam chamados. Para garantir que destruidores de exceção C++ não gerenciados sejam chamados, use a sintaxe a seguir no catch
bloco .
Catch
' Handle catch here.
End Try
catch
{
// Handle catch here.
}
catch(…)
{
// Handle catch here.
}
Construtores
SEHException() |
Inicializa uma nova instância da classe SEHException. |
SEHException(SerializationInfo, StreamingContext) |
Obsoleto.
Inicializa uma nova instância da classe SEHException dos dados de serialização. |
SEHException(String) |
Inicializa uma nova instância da classe SEHException com uma mensagem especificada. |
SEHException(String, Exception) |
Inicializa uma nova instância da classe SEHException com uma mensagem de erro especificada e uma referência à exceção interna que é a causa da exceção. |
Propriedades
Data |
Obtém uma coleção de pares de chave/valor que fornecem informações definidas pelo usuário adicionais sobre a exceção. (Herdado de Exception) |
ErrorCode |
Obtém o |
HelpLink |
Obtém ou define um link para o arquivo de ajuda associado a essa exceção. (Herdado de Exception) |
HResult |
Obtém ou define HRESULT, um valor numérico codificado que é atribuído a uma exceção específica. (Herdado de Exception) |
InnerException |
Obtém a instância Exception que causou a exceção atual. (Herdado de Exception) |
Message |
Obtém uma mensagem que descreve a exceção atual. (Herdado de Exception) |
Source |
Obtém ou define o nome do aplicativo ou objeto que causa o erro. (Herdado de Exception) |
StackTrace |
Obtém uma representação de cadeia de caracteres de quadros imediatos na pilha de chamadas. (Herdado de Exception) |
TargetSite |
Obtém o método que gerou a exceção atual. (Herdado de Exception) |
Métodos
CanResume() |
Indica se a exceção pode ser recuperada e se o código pode continuar do ponto no qual a exceção foi gerada. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetBaseException() |
Quando substituído em uma classe derivada, retorna a Exception que é a causa raiz de uma ou mais exceções subsequentes. (Herdado de Exception) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Obsoleto.
Quando substituído em uma classe derivada, define o SerializationInfo com informações sobre a exceção. (Herdado de Exception) |
GetType() |
Obtém o tipo de runtime da instância atual. (Herdado de Exception) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Cria e retorna uma representação de cadeia de caracteres da exceção atual. (Herdado de Exception) |
ToString() |
Retorna uma cadeia de caracteres que contém o HRESULT do erro. (Herdado de ExternalException) |
Eventos
SerializeObjectState |
Obsoleto.
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
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de