没事不写博客,手就有点痒,不知道干嘛?总感觉今天有点什么事没做一样。所以,现在又开始写了。感觉自己已经对其他
的东西,没有兴趣。一开电脑,首先看下新闻,然后看下公司的邮箱。然后,就是下载点东东。就没事情了。今天写什么了,就写点
关于Windows驱动的CRASH回调函数的一些用法。
我们知道CRASH,是Windows系统产生了无法恢复的错误,导致整个系统无法进行下去,而没有办法的一种选择。表项形式,
就是我们日常电脑中看到的蓝屏。其中的原因是多方面的,可能是内存访问越界,硬件问题,超时机制,中断机制等。我们有时候需
要捕捉这种信息,然后,给用户一种提示,或者反馈给开发人员,系统出现了严重的错误。这里,我们要用到CRASH的回调机制。这
里,主要有2个函数。KeRegisterBugCheckCallback和KeRegisterBugCheckReasonCallback。
先看第一个:
BOOLEAN KeRegisterBugCheckCallback(
IN PKBUGCHECK_CALLBACK_RECORD CallbackRecord,
IN PKBUGCHECK_CALLBACK_ROUTINE CallbackRoutine,
IN PVOID Buffer,
IN ULONG Length,
IN PUCHAR Component
);