阅读:1897回复:4
NDIS_HOOK_DRIVER 问题!!如何重新加载SYS驱动?
我用NDIS_HOOK_DRIVER 做了个东西;
发现一个问题; 当网线被拔下,然后再插上; NIDS_HOOK_DRIVER 从 系统中 HOOK 的 函数就失效了; 网络包就不能捕获了; 我想重新初始化我的SYS驱动,可是却不知怎么做; 我想用 NET STOP 命令,停止我的驱动; 可是,一停止,机器就自动重新启动了; 经过观察,发现调用了 IoDeleteSymbolicLink 后 ,机器就会重新启动; 谁能帮帮我;;;;; |
|
沙发#
发布于:2005-06-30 20:40
无奈
自己顶一个 |
|
板凳#
发布于:2005-06-30 20:44
1.一般的注册假协议的NDIS_HOOK_DRIVER,确实存在这个问题,因为只是在开始的时候,hook一次NDIS_OPEN_BLOCK.而当网卡,Unbind,重新Bind的时候,会重新生成NDIS_OPEN_BLOCK,而这时候,
hook driver对新生成的NDIS_OPEN_BLOCK完全不知道,当然就会失效了. 2.可以hook NdisOpenAdapter,就知道有新的NDIS_OPEN_BLOCK生成,就再hook一次,就应该可以 3.这种驱动最后,最好不要动态卸载,不然问题会很多 |
|
地板#
发布于:2005-07-01 15:07
这种动态卸载会有问题。
|
|
地下室#
发布于:2005-07-01 15:32
万分感谢 zhaock 的帮助
重新对NDIS_OPEN_BLOCK 进行重新挂接 果然解决了该问题; 好 ^_^ 谢谢 zhaock |
|