Freigeben über


KeRegisterBugCheckReasonCallback-Funktion (wdm.h)

Die KeRegisterBugCheckReasonCallback Funktion registriert eine Rückrufroutine, die ausgeführt wird, wenn das Betriebssystem eine Fehlerüberprüfung ausgibt.

Syntax

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

Parameter

[out] CallbackRecord

Ein Zeiger auf eine KBUGCHECK_REASON_CALLBACK_RECORD Struktur, die durch einen Aufruf der KeInitializeCallbackRecord-Routine initialisiert wurde, die in den Windows-Kernelmakrosbeschrieben wird.

[in] CallbackRoutine

Ein Zeiger auf eine Rückrufroutine vom Typ KBUGCHECK_REASON_CALLBACK_ROUTINE zum Registrieren. Informationen zum Implementieren dieser Rückrufroutine finden Sie unter Schreiben einer Fehlerüberprüfungsrückrufroutine.

[in] Reason

Eine Aufzählung vom Typ KBUGCHECK_CALLBACK_REASON, die den Typ der Rückrufroutine angibt, auf die CallbackRoutine verweist.

[in] Component

Ein Zeiger auf eine MIT NULL beendete ANSI-Zeichenfolge, die den Aufrufer identifiziert. Sie können beispielsweise eine Zeichenfolge auswählen, die den Gerätetreiber beschreibt oder den Gerätenamen enthält. Sie können die !bugdump Debuggererweiterung verwenden, um die Absturzabbilddaten anzuzeigen, die dieser Zeichenfolge zugeordnet sind.

Rückgabewert

KeRegisterBugCheckReasonCallback gibt TRUE- zurück, wenn die Rückrufroutine erfolgreich registriert wurde; andernfalls wird FALSE-zurückgegeben.

Bemerkungen

Treiber können KeRegisterBugCheckReasonCallback- verwenden, um Routinen zu registrieren, die während einer Systemfehlerüberprüfung ausgeführt werden.

Beschreibungen der einzelnen Rückruftypen finden Sie unter KBUGCHECK_CALLBACK_REASON.

Treiber können die KeDeregisterBugCheckReasonCallback Routine verwenden, um die Rückrufregistrierung bei der Fehlerüberprüfung zu entfernen. Jeder Treiber, der entladen werden kann, muss die Registrierungen aller Rückrufe in seiner Unload Routine entfernen.

Informationen zum Implementieren dieser Rückrufroutinen finden Sie unter Schreiben einer Fehlerüberprüfungsrückrufroutine.

Um sekundäre Dumpdaten anzuzeigen, können Sie die IDebugDataSpaces3::ReadTagged** -Methode in einer Debuggererweiterung verwenden. Eine weitere Möglichkeit besteht darin, die Fehlerüberprüfungsrückrufroutine selbst zu debuggen. Weitere Informationen zu Debuggern und Debuggererweiterungen finden Sie unter Windows Debugging.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows XP Service Pack 1 (SP1), Windows Server 2003 und höheren Versionen von Windows.
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- Beliebige Ebene

Siehe auch

Schreiben einer Fehlerüberprüfungsroutine

KBUGCHECK_CALLBACK_REASON

KBUGCHECK_REASON_CALLBACK_RECORD

KeDeregisterBugCheckReasonCallback

KeInitializeCallbackRecord

KeRegisterBugCheckCallback-