阅读:2975回复:3
Win7上键盘过滤驱动卸载蓝屏(已解决)
在看《寒江独钓》第四章,键盘过滤这一块!
照着书中的代码敲了一遍,还没加复杂的功能,仅仅是打印出扫描码。 卸载的时候,是用全局变量来计数,就是如果全局变量不为0,就说明有请求还米完成,就一直等,直到有按键按下,请求完成,卸载完成! 在Win7上编译完,加载驱动之后,再停止驱动就出问题了,开始是程序在等你按最后一次按键,按了之后,打印完成,紧接着蓝屏! 同样的在Win7上编译出来的这个驱动,在XP上面卸载没有问题。求高手指点! 系统出错信息如下: 图片:QQ截图20110721103320.png ![]() 图片:QQ截图20110721103430.png ![]() …… 图片:QQ截图20110721103455.png ![]() |
|
沙发#
发布于:2011-07-26 14:00
![]() 补充:Win7上面可以卸载,只不过卸载之后接着蓝屏鸟! |
|
板凳#
发布于:2011-07-26 16:50
问题解决
![]() 在使用了ObReferenceObjectByName之后,需要对引用的驱动对象减少计数,否则在卸载时候无法销毁! 我照着《寒江独钓》书上写的代码,是这样写的ObDereferenceObject(DriverObject),参数不对!在XP上面可能检查不太严格吧,所以就正常没有问题。 谢谢大家的关注,希望遇到这个问题的朋友引以为戒,多思考^_^ |
|
地板#
发布于:2011-07-27 23:14
恭喜,自己动手丰衣足食的乐趣
|
|