次の方法で共有


KBUGCHECK_REASON_CALLBACK_ROUTINE コールバック関数 (wdm.h)

バグ チェックを発行するときにシステムが実行するドライバー実装コールバック関数。

使用可能なコールバック型については、KBUGCHECK_CALLBACK_REASON を参照してください。

構文

KBUGCHECK_REASON_CALLBACK_ROUTINE KbugcheckReasonCallbackRoutine;

void KbugcheckReasonCallbackRoutine(
  [in]      KBUGCHECK_CALLBACK_REASON Reason,
  [in]      _KBUGCHECK_REASON_CALLBACK_RECORD *Record,
  [in, out] PVOID ReasonSpecificData,
  [in]      ULONG ReasonSpecificDataLength
)
{...}

パラメーター

[in] Reason

コールバック ルーチンの呼び出しの理由を指定する KBUGCHECK_CALLBACK_REASON 型の列挙型。

[in] Record

ドライバーがこのコールバックを登録したときに指定した KBUGCHECK_REASON_CALLBACK_RECORD 構造体へのポインター。 詳細については、keRegisterBugCheckReasonCallbackCallbackRecord パラメーター説明を参照してください。

[in, out] ReasonSpecificData

次の表によって決定される型の構造体を含むバッファーへのポインター。 この構造体の特定のメンバーは、コールバック ルーチンを呼び出す前にオペレーティング システムによって入力され、他のメンバーはコールバック ルーチンによって入力される必要があります。 詳細については、「バグ チェック コールバック ルーチンの を記述するを参照してください。

価値 データ構造
KbCallbackSecondaryDumpData KBUGCHECK_SECONDARY_DUMP_DATA
KbCallbackDumpIo KBUGCHECK_DUMP_IO
KbCallbackAddPages KBUGCHECK_ADD_PAGES
KbCallbackSecondaryMultiPartDumpData KBUGCHECK_SECONDARY_DUMP_DATA_EX
KbCallbackRemovePages KBUGCHECK_REMOVE_PAGES
KbCallbackTriageDumpData KBUGCHECK_TRIAGE_DUMP_DATA

[in] ReasonSpecificDataLength

ReasonSpecificData パラメーターが指すバッファーのサイズをバイト単位で指定します。

戻り値

何一つ

備考

このコールバック ルーチンを実装する方法については、「バグ チェック コールバック ルーチンの作成を参照してください。

クラッシュ ダンプ ファイルにデータを書き込む方法を示すサンプル コードについては、DMF_CrashDumpを参照してください。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
IRQL HIGH_LEVELで呼び出されます。

関連項目

KBUGCHECK_ADD_PAGES

KBUGCHECK_CALLBACK_REASON

KBUGCHECK_REASON_CALLBACK_RECORD

KeRegisterBugCheckReasonCallback

KeDeregisterBugCheckReasonCallback

バグ チェック コールバック ルーチンの を記述する