Função KeRegisterBugCheckReasonCallback (wdm.h)

A função KeRegisterBugCheckReasonCallback registra uma rotina de retorno de chamada que é executada quando o sistema operacional emite um bug marcar.

Sintaxe

BOOLEAN KeRegisterBugCheckReasonCallback(
  [out] PKBUGCHECK_REASON_CALLBACK_RECORD  CallbackRecord,
  [in]  PKBUGCHECK_REASON_CALLBACK_ROUTINE CallbackRoutine,
  [in]  KBUGCHECK_CALLBACK_REASON          Reason,
  [in]  PUCHAR                             Component
);

Parâmetros

[out] CallbackRecord

Um ponteiro para uma estrutura KBUGCHECK_REASON_CALLBACK_RECORD que foi inicializada por uma chamada para a rotina KeInitializeCallbackRecord descrita nas macros de kernel do Windows.

[in] CallbackRoutine

Um ponteiro para uma rotina de retorno de chamada do tipo KBUGCHECK_REASON_CALLBACK_ROUTINE a ser registrado. Para obter informações sobre como implementar essa rotina de retorno de chamada, consulte Escrevendo uma rotina de retorno de chamada de verificação de bugs.

[in] Reason

Uma enumeração do tipo KBUGCHECK_CALLBACK_REASON que especifica o tipo de rotina de retorno de chamada para o qual CallbackRoutine aponta.

[in] Component

Um ponteiro para uma cadeia de caracteres ANSI terminada em nulo que identifica o chamador. Por exemplo, você pode selecionar uma cadeia de caracteres que descreve o driver do dispositivo ou que contém o nome do dispositivo. Você pode usar a extensão do depurador !bugdump para exibir os dados de despejo de memória associados a essa cadeia de caracteres.

Retornar valor

KeRegisterBugCheckReasonCallback retornará TRUE se a rotina de retorno de chamada for registrada com êxito; caso contrário, retornará FALSE.

Comentários

Os drivers podem usar KeRegisterBugCheckReasonCallback para registrar rotinas executadas durante uma marcar de bugs do sistema.

Para obter descrições de cada tipo de retorno de chamada, consulte KBUGCHECK_CALLBACK_REASON.

Os drivers podem usar a rotina KeDeregisterBugCheckReasonCallback para remover o bug marcar registro de retorno de chamada. Qualquer driver que possa ser descarregado deve remover os registros de todos os seus retornos de chamada em sua rotina de descarregamento .

Para obter informações sobre como implementar essas rotinas de retorno de chamada, consulte Escrevendo uma rotina de retorno de chamada de verificação de bugs.

Para exibir dados de despejo secundários, você pode usar o método IDebugDataSpaces3::ReadTagged** em uma extensão do depurador. Outra opção é depurar o bug marcar rotina de retorno de chamada em si. Para obter mais informações sobre depuradores e extensões do depurador, consulte Depuração do Windows.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows XP Service Pack 1 (SP1), Windows Server 2003 e versões posteriores do Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Qualquer nível

Confira também

Gravando uma rotina de retorno de chamada de verificação de bugs

KBUGCHECK_CALLBACK_REASON

KBUGCHECK_REASON_CALLBACK_RECORD

KeDeregisterBugCheckReasonCallback

KeInitializeCallbackRecord

KeRegisterBugCheckCallback