以前一直都是用 VS2008 + DDKWizard + WinDbg 来进行驱动程序的开发调试的,
使用 DDKWizard 来搭配调试环境呢,在 VS2008 下也还算方便,
因为不需要自己去设置一些什么包含文件啊,源代码路径啊之类的就可以直接编译驱动程序源码,
安装好 DDKWizard 后,在 VS2008 中就会自动出现一个开发驱动程序的项目框架,
就跟选择创建 WinForm 应用程序一样的,创建好 DDK 项目后也是可以直接在 VS2008 下编译的,
所以在开发上也还方便,但是在调试上的话,就麻烦了,
在 WinDbg 中有一大堆东西要设置,在虚拟机上也要设置一些命令,
关于 WinDbg + VMware 开发调试驱动程序在网上有比较有名的酒若琳的文章,
不过那是很多年以前的文章了,有兴趣的可以去谷歌搜索 "酒若琳 WinDbg" ,应该是可以找到那篇文章的。
同时对于这一块的使用,也可以参考笔者的文章《驱动开发 – WDK 调试及 SVN 环境搭配》,
博文地址为:http://www.cnblogs.com/BoyXiao/archive/2011/05/06/2038578.html
但是在使用 DDKWizard + VS2008 进行驱动开发时,是不能够直接通过 VS2008 来调试的
(这里可能有其他门路来实现,但是笔者没有实现过),
而一般都是在 WinDbg 中设置好符号文件的路径以及源代码的路径,然后再驱动程序的源代码中嵌入一些汇编代码,
当然这些汇编代码只是简单的用来实现一个中断,从而在 WinDbg 调试器中会生成一个断点。
这样调试起来速度慢,也不好控制,所以有时候觉得在做开发的时候,在调试上花去的时间太多了,会不爽。
在本次博文中,将要介绍的是一个开源项目 VirtualDDK(VirtualKD 中包含了 VirtualDDK),
通过这个开源项目即可以很好的实现在 VS2010 以及 VS2008 下直接调试驱动程序,
同时对于 VirtualDDK 的环境搭配也是很简单的,下面就直接上一些图片以及一些注解来说明,
由于文章存在大量的截图,所以读者只要按着截图来做基本上都是可以成功的。
同时下面给出官网上的一篇关于利用 VirtualDDK 和 VS 来调试驱动程序的文章(内容非常详细),
基本上通过笔者的这篇博文和官网上的博文就完全可以搭建驱动程序开发环境成功了 !
同时在官网上的环境为 VS2008 的。而且在官网的博文中还有两个比较好的驱动例子の !
1. A dummy driver that simply prints a message when it is loaded .
2. A ramdisk driver, that creates a virtual hard disk .