阅读:1356回复:6
hook ssdt 后,cpu只要100%就会蓝屏!
hook ssdt是利用动态加载卸载驱动的.是不是hook 不能动态加载卸载驱动?
|
|
沙发#
发布于:2007-08-27 19:56
看你HOOK啥了,那些每秒N次的函数,还是小心为妙。
|
|
|
板凳#
发布于:2007-08-28 10:06
HOOK了隐藏文件, 结果cpu只要100%就出现UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS, wococok大侠你说过在卸载时加引用计数,能再多给点提示吗,或是代码也行?
|
|
地板#
发布于:2007-08-29 16:27
在你Hook的函数开始时增加计数,将要退出的时候就减计数。。卸载的时候看计数是不是为0,如果不是就等待。。。
比如你 Hook了一个ReadFile, 这个操作可能在卸载驱动的时候还没返回呢,所以,你卸载后而这个操作返回了,就会试图进入无效的内存地址了(已卸载),这样就出你说的问题了。 |
|
地下室#
发布于:2007-08-29 16:54
你的问题就是这个导致的..
你可以退出时等待,直到计数器为0才真正卸载 |
|
|
5楼#
发布于:2007-08-31 10:40
引用第3楼javacap于2007-08-29 16:27发表的 : |
|
|
6楼#
发布于:2007-08-31 16:11
我在DriverUnload里调用KeWaitForSingleObjects,可是应该用什么同步对象?
KSEMAPHORE 可以做计数器吗? ![]() |
|