Método ICorDebugManagedCallback2::Exception
Notifica o depurador de que uma pesquisa por um manipulador de exceção foi iniciada.
Sintaxe
HRESULT Exception (
[in] ICorDebugAppDomain *pAppDomain,
[in] ICorDebugThread *pThread,
[in] ICorDebugFrame *pFrame,
[in] ULONG32 nOffset,
[in] CorDebugExceptionCallbackType dwEventType,
[in] DWORD dwFlags
);
Parâmetros
pAppDomain
[em] Um ponteiro para um objeto ICorDebugAppDomain que representa o domínio do aplicativo que contém o thread no qual a exceção foi lançada.
pThread
[em] Um ponteiro para um objeto ICorDebugThread que representa o thread no qual a exceção foi lançada.
pFrame
[em] Um ponteiro para um objeto ICorDebugFrame que representa um quadro, conforme determinado pelo dwEventType
parâmetro. Para obter mais informações, consulte a tabela na seção Observações.
nOffset
[em] Um inteiro que especifica um deslocamento, conforme determinado pelo dwEventType
parâmetro. Para obter mais informações, consulte a tabela na seção Observações.
dwEventType
[em] Um valor da enumeração CorDebugExceptionCallbackType que especifica o tipo desse retorno de chamada de exceção.
dwFlags
[em] Um valor da enumeração CorDebugExceptionFlags que especifica informações adicionais sobre a exceção
Observações
O Exception
retorno de chamada é chamado em vários pontos durante a fase de pesquisa do processo de tratamento de exceções. Ou seja, ele pode ser chamado mais de uma vez enquanto desenrola uma exceção.
A exceção que está sendo processada pode ser recuperada do objeto ICorDebugThread referenciado pThread
pelo parâmetro.
O quadro e o dwEventType
deslocamento específicos são determinados pelo parâmetro da seguinte forma:
Valor de dwEventType |
Valor de pFrame |
Valor de nOffset |
---|---|---|
DEBUG_EXCEPTION_FIRST_CHANCE | O quadro que lançou a exceção. | O ponteiro de instrução no quadro. |
DEBUG_EXCEPTION_USER_FIRST_CHANCE | O quadro de código de usuário mais próximo do ponto da exceção lançada. | O ponteiro de instrução no quadro. |
DEBUG_EXCEPTION_CATCH_HANDLER_FOUND | O quadro que contém o manipulador de capturas. | O deslocamento da linguagem intermediária comum (CIL) do início do manipulador de capturas. |
DEBUG_EXCEPTION_UNHANDLED | NULL | Indefinido. |
Requisitos
Plataformas: Consulte Requisitos do sistema.
Cabeçalho: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: Disponível desde 2.0