KBUGCHECK_REASON_CALLBACK_ROUTINE回调函数 (wdm.h)
驱动程序实现的回调函数,系统在发出 bug 时执行检查。
有关可用回调类型的信息 ,请参阅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 结构的指针。 有关详细信息,请参阅 KeRegisterBugCheckReasonCallback 中 CallbackRecord 参数的说明。
[in, out] ReasonSpecificData
指向缓冲区的指针,该缓冲区包含由下表确定的类型结构。 此结构的某些成员在调用回调例程之前由操作系统填充,其他成员必须由回调例程填充。 有关详细信息,请参阅 编写 Bug 检查回调例程。
值 | 数据结构 |
---|---|
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 参数指向的缓冲区的大小(以字节为单位)。
返回值
无
备注
有关如何实现此回调例程的信息,请参阅 编写 Bug 检查回调例程。
有关演示如何将数据写入故障转储文件的示例代码,请参阅 DMF_CrashDump。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |
IRQL | 在 HIGH_LEVEL 调用。 |
另请参阅
KBUGCHECK_REASON_CALLBACK_RECORD
KeRegisterBugCheckReasonCallback