KeRegisterBugCheckReasonCallback-Funktion (wdm.h)

Die KeRegisterBugCheckReasonCallback-Funktion registriert eine Rückrufroutine, die ausgeführt wird, wenn das Betriebssystem eine Fehlerprü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-Kernelmakros beschrieben wird.

[in] CallbackRoutine

Ein Zeiger auf eine Rückrufroutine vom Typ KBUGCHECK_REASON_CALLBACK_ROUTINE zu registrieren. Informationen zum Implementieren dieser Rückrufroutine finden Sie unter Schreiben einer Rückrufroutine für die Fehlerüberprüfung.

[in] Reason

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

[in] Component

Ein Zeiger auf eine MIT NULL endende 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 Debuggererweiterung !bugdump 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.

Hinweise

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 für die 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 Rückrufroutine für die Fehlerüberprüfung.

Zum Anzeigen sekundärer Speicherabbilddaten können Sie die IDebugDataSpaces3::ReadTagged**-Methode in einer Debuggererweiterung verwenden. Eine weitere Möglichkeit besteht darin, die Rückrufroutine für die Fehlerüberprüfung selbst zu debuggen. Weitere Informationen zu Debuggern und Debuggererweiterungen finden Sie unter Windows-Debuggen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows XP Service Pack 1 (SP1), Windows Server 2003 und höheren Versionen von Windows.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Beliebige Ebene

Weitere Informationen

Schreiben einer Rückrufroutine für die Fehlerüberprüfung

KBUGCHECK_CALLBACK_REASON

KBUGCHECK_REASON_CALLBACK_RECORD

KeDeregisterBugCheckReasonCallback

KeInitializeCallbackRecord

KeRegisterBugCheckCallback