Windows错误检查callback不在64位系统上调用

前一段时间,我们已经成功地将驱动程序移植到了64位系统。

但有一件事是不存在的,这不是很重要,但它是一个非常方便的debuggingfunction。

KeRegisterBugCheckReasonCallback注册的callback从不被调用。 该函数成功返回TRUE,但我的callback从不被调用。 我也尝试了不同的值为参数的原因,没有成功。 用旧的KeRegisterBugCheckCallback尝试也失败了。

我做错了什么?

我在文档中遗漏了什么?

Solutions Collecting From Web of "Windows错误检查callback不在64位系统上调用"

我发现了这个问题。

如果相应的KBUGCHECK_CALLBACK_RECORD对齐到一个8字节的地址,Windows只调用回调。

由于某种原因我排列在4个字节的地址。

KeRegisterBugCheckReasonCallback没有检查这是一个无赖。