以前一直都是用 VS2008 + DDKWizard + WinDbg 來進行驅(qū)動程序的開發(fā)調(diào)試的,
使用 DDKWizard 來搭配調(diào)試環(huán)境呢,在 VS2008 下也還算方便,
因為不需要自己去設(shè)置一些什么包含文件啊,源代碼路徑啊之類的就可以直接編譯驅(qū)動程序源碼,
安裝好 DDKWizard 后,在 VS2008 中就會自動出現(xiàn)一個開發(fā)驅(qū)動程序的項目框架,
就跟選擇創(chuàng)建 WinForm 應(yīng)用程序一樣的,創(chuàng)建好 DDK 項目后也是可以直接在 VS2008 下編譯的,
所以在開發(fā)上也還方便,但是在調(diào)試上的話,就麻煩了,
在 WinDbg 中有一大堆東西要設(shè)置,在虛擬機上也要設(shè)置一些命令,
關(guān)于 WinDbg + VMware 開發(fā)調(diào)試驅(qū)動程序在網(wǎng)上有比較有名的酒若琳的文章,
不過那是很多年以前的文章了,有興趣的可以去谷歌搜索 "酒若琳 WinDbg" ,應(yīng)該是可以找到那篇文章的。
同時對于這一塊的使用,也可以參考筆者的文章《驅(qū)動開發(fā) – WDK 調(diào)試及 SVN 環(huán)境搭配》,
博文地址為:http://www.cnblogs.com/BoyXiao/archive/2011/05/06/2038578.html
但是在使用 DDKWizard + VS2008 進行驅(qū)動開發(fā)時,是不能夠直接通過 VS2008 來調(diào)試的
(這里可能有其他門路來實現(xiàn),但是筆者沒有實現(xiàn)過),
而一般都是在 WinDbg 中設(shè)置好符號文件的路徑以及源代碼的路徑,然后再驅(qū)動程序的源代碼中嵌入一些匯編代碼,
當(dāng)然這些匯編代碼只是簡單的用來實現(xiàn)一個中斷,從而在 WinDbg 調(diào)試器中會生成一個斷點。
這樣調(diào)試起來速度慢,也不好控制,所以有時候覺得在做開發(fā)的時候,在調(diào)試上花去的時間太多了,會不爽。
在本次博文中,將要介紹的是一個開源項目 VirtualDDK(VirtualKD 中包含了 VirtualDDK),
通過這個開源項目即可以很好的實現(xiàn)在 VS2010 以及 VS2008 下直接調(diào)試驅(qū)動程序,
同時對于 VirtualDDK 的環(huán)境搭配也是很簡單的,下面就直接上一些圖片以及一些注解來說明,
由于文章存在大量的截圖,所以讀者只要按著截圖來做基本上都是可以成功的。
同時下面給出官網(wǎng)上的一篇關(guān)于利用 VirtualDDK 和 VS 來調(diào)試驅(qū)動程序的文章(內(nèi)容非常詳細(xì)),
基本上通過筆者的這篇博文和官網(wǎng)上的博文就完全可以搭建驅(qū)動程序開發(fā)環(huán)境成功了 !
同時在官網(wǎng)上的環(huán)境為 VS2008 的。而且在官網(wǎng)的博文中還有兩個比較好的驅(qū)動例子の !
1. A dummy driver that simply prints a message when it is loaded .
2. A ramdisk driver, that creates a virtual hard disk .