herolib
驱动牛犊
驱动牛犊
  • 注册日期2005-03-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分531分
  • 威望86点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
阅读:1897回复:4

NDIS_HOOK_DRIVER 问题!!如何重新加载SYS驱动?

楼主#
更多 发布于:2005-06-30 18:34
  我用NDIS_HOOK_DRIVER 做了个东西;

发现一个问题;

当网线被拔下,然后再插上;

NIDS_HOOK_DRIVER 从 系统中 HOOK 的 函数就失效了;

网络包就不能捕获了;

我想重新初始化我的SYS驱动,可是却不知怎么做;

我想用 NET STOP 命令,停止我的驱动;

可是,一停止,机器就自动重新启动了;

经过观察,发现调用了 IoDeleteSymbolicLink 后 ,机器就会重新启动;


谁能帮帮我;;;;;
herolib
驱动牛犊
驱动牛犊
  • 注册日期2005-03-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分531分
  • 威望86点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-06-30 20:40
无奈

自己顶一个
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于: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.这种驱动最后,最好不要动态卸载,不然问题会很多
mejycrack
驱动牛犊
驱动牛犊
  • 注册日期2004-11-20
  • 最后登录2012-07-02
  • 粉丝0
  • 关注0
  • 积分58分
  • 威望8点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-07-01 15:07
这种动态卸载会有问题。
herolib
驱动牛犊
驱动牛犊
  • 注册日期2005-03-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分531分
  • 威望86点
  • 贡献值0点
  • 好评度51点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-07-01 15:32
万分感谢 zhaock  的帮助
重新对NDIS_OPEN_BLOCK 进行重新挂接
果然解决了该问题;



^_^

谢谢 zhaock
游客

返回顶部