阅读:2156回复:8
PsSetCreateProcessNotifyRoutine卸载失败
我用PsSetCreateProcessNotifyRoutine注册了进程创建回调函数,
但是有时候PsSetCreateProcessNotifyRoutine注销回调函数的时候好像是没有成功,导致蓝屏了, 驱动卸载了,系统还不知道此回调函数不存在了,导致蓝屏了, 这不是经常出现,在某台机器上出现次数比较多,32位和64位系统都出现过,不知道为什么会注销失败, 有人知道怎么回事吗?求讲解下 |
|
沙发#
发布于:2012-11-12 10:47
没人遇到过吗
|
|
板凳#
发布于:2012-11-12 14:14
估计你的取消回调例程序没成功。
|
|
|
地板#
发布于:2012-11-12 16:21
对,我就是问为什么会出现取消回调失败呢
|
|
地下室#
发布于:2012-11-13 11:25
|
|
5楼#
发布于:2012-11-23 18:11
文档只说了注册失败的情况,没有说注销失败的情况。 是不是注册时候就没有成功?
|
|
|
6楼#
发布于:2012-11-27 13:56
|
|
7楼#
发布于:2012-12-03 17:15
查看返回的状态码,看看是什么情况,另外如果确实为移除回调失败的话且状态码感觉莫名奇妙,可以看看机器上是否安装了其它的安全软件,特别是有主动防御功能的(我之前遇到过类似的情况,有些安全软件或是rootkit程序可能会对此操作进行处理)。
|
|
8楼#
发布于:2012-12-03 17:21
我以前也碰到过这类蓝屏。后面不用回调函数了。
当时有一种蓝屏情况是,驱动DriverEntry函数中注册了回调,但是后面的代码出问题了(譬如创建接口符号设备失败),没有取消回调函数直接退出DriverEntry函数。 这时候UnLoad函数是不会被调用的。蓝屏。 |
|