环境是:
window 2003 server
工具:
Windows Server 2003 DDK(迅雷下载地址:ftp://www.driverdevelop.com/en_ws2003_sp1_ddk.iso)
Driverstudio3.2 (迅雷下载地址:http://cracklab.ru/_dl/_/DriverStudio_3.2_CRACKLAB.rU.rar)
Visual c++6.0
source insight3.2(序列号:SI3US-205035-36448)
相应的环境如何搭建网上有许多文章,我只想说说自己遇到的问题。
学习NDIS肯定会参阅下面的文章(有两篇,下面其中一篇)
http://www.wd-3.com/archive/ExtendingPassthru2.htm
感谢Thomas不但讲解了,还提供了相应的代码供我们阅读。
但代码下下来后傻眼了,里面的函数关系看着就头大,对驱动编程也不了解。
如何阅读passthru代码?
我的方法是:
用source insight查看应用程序端的代码,使用里面的函数关系图,这样对代码的结构就一清二楚了。
当我解决了应用端程序的疑惑后,我开始想驱动程序也是很复杂的关系,怎么阅读呢?(驱动程序中很多都是NDIS库函数,用source insight无法详尽例举出相关的调用关系图)
我下载了Driverstudio3.2,使用它将相应的工程转化为VC工程,VC中如何看调用关系图呢?
使用VC中的source browers(菜单tools下)。
通过source insight中的调用关系图和VC的source browers,十分方面我对代码的阅读,可以为自己省不少事。
后面的事情就是通过工具方便快速的理解程序,然后设计自己的东西了。
希望这篇文章能够对看到代码不知如何入手的朋友有所帮助。
另外在我的上传资源中有一个《NDIS防火墙》文档,是针对passtru进行讲解的,也有Thomas两个例子的源码和英文讲解的翻译。
上述资源都来自网络,谢谢大家的分享。