Code Is Poetry

More simple but not too simple

   以前做过一段时间的文件过滤驱动,是老的文件过滤驱动架构(也就是基于IRP过滤的legacy filter),最近突然对做过滤驱动有些小怀念,又看到大家都在学习WDK的新过滤驱动(miniFilter),于是赶紧去
下载了个WDK,念及自己一直都是从互联网获取自己需要的知识,却很少去回帖跟风,这样不好不好,
于是这里把自己整个学习过程和需要注意的环节记录下来,希望能对别人有所帮助。

  工欲善其事必先利其器,这里还是选用WINDOWS开发者喜欢的VC+WDK+WinDbg来学习和调试驱动。

   VC装的是VisualStudio 2008,这个我不能提供给您,自己搞定吧^^

   WDK开发包(WINDOWS DRIVER KITS) 下载:
   简单的说,WDK 是DDK的升级版,微软把以前DDK的很多函数、机制做了封装,简化了开发难度。
   关于WDK的新旧版本过滤驱动管理的区别,微软有一个文档,可以从这里下载:
http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/filter_manager.ppt
   WDK可以从微软免费下载:
   http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&FamilyID=36a2630f-5d56-43b5-b996-7633f2ec14ff


   DDKWizard下载:
   DDKWizard是一个可以用VC来建立驱动项目的软件,安装之后就可以创建WDK项目,这样我们就可以用VisualStudio 来build驱动,也方便编辑源码。
   下载地址:

   http://ddkwizard.assarbad.net/
   
   安装完将ddkbuild.cmd拷贝到你的WDK目录下,例如D:\\WDK(假如你的WDK在D:\\WDK\\7600.16385.1),打开VS2008-》工具-》选项-》项目和解决方案-》VC++目录-》可执行文件,选择刚才放ddkbuild.cmd的目录(刚才的D:\\WDK),然后新建一个驱动项目,把PREfast选项去掉,点完成,然后把自己的驱动代码加进项目,按F7即可编译。

   遇到问题,互联网是你最好的朋友,学驱动有几个网站可以常去:
   www.driverdevelop.comwww.osronline.com 都不错。

   同时,微软提供了很多的过滤驱动学习资料下载:
   http://www.microsoft.com/whdc/driver/filterdrv/default.mspx

   安装完了, 也可以BUILD了,可以在虚拟机上跑,关于用Windbg和虚拟机一起来调试程序的,
请点这里:

   http://www.baidu.com/s?bs=ddkwizard&f=8&wd=%D0%E9%C4%E2%BB%FA+%B5%F7%CA%D4%C7%FD%B6%AF&oq=xuniji&sug=%D0%E9%C4%E2%BB%FA&n=1&rsp=0


   可能您还会遇到很多问题,但是我相信都是可以解决的,所以假设到这里您已经搭好环境,能build出目标驱动,并用Windbg和虚拟机进行调试。如果有问题,可以发邮件到lonestep@qq.com互相学习。
posted on 2011-01-17 16:22 lonestep 阅读(1710) 评论(0)  编辑 收藏 引用 所属分类: 程序

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理