一、WDK的介紹、下載、安裝及配制

1、關(guān)于WDK

Windows Driver Kit(驅(qū)動(dòng)程序工具包): 是一種完全集成的驅(qū)動(dòng)程序開(kāi)發(fā)系統(tǒng),它包含 Windows Driver Device Kit (DDK),用于測(cè)試 Windows 驅(qū)動(dòng)程序的可靠性和穩(wěn)定性,包括:

  • Windows Driver Foundation (WDF) 簡(jiǎn)化了 Windows 驅(qū)動(dòng)程序的開(kāi)發(fā)和支持。
  • 頭文件重構(gòu) (Windows Vista 和更高版本)通過(guò)提供更簡(jiǎn)單的目錄結(jié)構(gòu)、避免聲明沖突以及對(duì)所有支持的 Windows 版本使用單一頭文件集,降低頭文件的復(fù)雜性。
  • Installable File Systems (IFS) Kit將頭、庫(kù)、示例以及文檔作為 WDK 的一部分分發(fā)。
  • 驗(yàn)證程序和靜態(tài)分析工具, (如 PREfast 和 靜態(tài)驅(qū)動(dòng)程序驗(yàn)證程序)幫助您在編譯時(shí)查找 bug。

2、下載WDK

曾經(jīng)下載WDK好像還必須得http://connect.microsoft.com/注冊(cè)后才能下載,而且下載后還有一句提示:

“提醒:您必須接受附帶的許可條款才能使用此軟件。不得分發(fā)下載軟件包。”

所以當(dāng)時(shí)下載的時(shí)候還要走一些不得不走的路。不過(guò),今天好像發(fā)現(xiàn)WDK能直接下載了

下載地址:http://download.microsoft.com/download/4/A/2/4A25C7D5-EFBE-4182-B6A9-AE6850409A78/GRMWDK_EN_7600_1.ISO

如果不能正常下載,具體操作請(qǐng)見(jiàn)如何下載WDK

3、安裝WDK

  1. 用虛擬光驅(qū)加載下載好的.ISO鏡像文件,雙擊運(yùn)行,出現(xiàn)下面親切的畫(huà)面 
    image 
  2. 接觸,出現(xiàn)以下畫(huà)面,在左側(cè)的樹(shù)形復(fù)選框中選擇要安裝的組件及工具,建議全部安裝,選擇好后點(diǎn)擊“OK”~~后面的就簡(jiǎn)單了~ 
    image 
  3. 爾后,一路確定默認(rèn)即可image

 

二、DDKWzard的介紹、下載、安裝及配制

在VS2008IDE中沒(méi)有提供驅(qū)動(dòng)開(kāi)發(fā)的項(xiàng)目選項(xiàng),當(dāng)然可以用普通工程,然后手動(dòng)在VS中配制相應(yīng)的編輯連接以及調(diào)試選項(xiàng),但是如此只來(lái),每次都要重復(fù)些復(fù)雜的步驟。在http://ddkwizard.assarbad.net/網(wǎng)站上發(fā)現(xiàn)了一個(gè)很好用的輔助工具DDKWizard,能夠方便地對(duì)開(kāi)發(fā)環(huán)境進(jìn)行配置,真是適合想我這樣懶人啊,工具的作者也自稱(chēng)是因?yàn)閼卸璨砰_(kāi)發(fā)此工具,看來(lái)“懶惰是推動(dòng)科技發(fā)展的動(dòng)力”一點(diǎn)不假 。

  • DDKwzard安裝需要三個(gè)文件:DDKWzard主程序:安裝VS2008的項(xiàng)目模板ddkwizard_setup.exe
  • DDKBUILD.CMD:應(yīng)該是用VS2008調(diào)用WDK編輯編譯器的一系列腳本dkbuild_cmd.zip
  • DDKBUILD.BAT :估計(jì)也是是用VS2008調(diào)用WDK編輯編譯器的一系列腳本ddkbuild_bat.zip
  1. 安裝ddkwizard_setup,默認(rèn)安裝,一路Next點(diǎn)過(guò)即可,將DDKBUILD.CMD與DDKBUILD.BAT考到WDK的安裝目錄,或者其它目錄也行,只要在后續(xù)的設(shè)置就行。如:我將其放在wdk的目錄下,如圖 
    image    
     
  2. 設(shè)置環(huán)境變量 
    添加相應(yīng)的環(huán)境變量,如要開(kāi)發(fā)XP系統(tǒng)下的驅(qū)動(dòng)則添加WXPBASE,變量值為WDK的根目錄,如圖 
    image如果為其它系統(tǒng)開(kāi)發(fā)驅(qū)動(dòng)則填寫(xiě)相應(yīng)的環(huán)境變量 
    NT 4.0 ———–NT4BASE

     

    windows2000—-W2KBASE

    windowsXP——-WXPBASE

    windows2003—-WNETBASE

    win7/2008 R2—-W7BASE

  3. 打開(kāi)VS 2008,菜單“工具”->“選項(xiàng)”->左側(cè)“項(xiàng)目和解決方案”->“VC++目錄”->右側(cè)“可執(zhí)行文件”下拉列表->添加一項(xiàng)D:/WINDDK(根據(jù)你的實(shí)際情況,就是第1步中DDKBUILD.CMD與DDKBUILD.BAT所在的路徑)。 
    image 
     
  4. 然后就可以在我們的VS2008中新建項(xiàng)目了,如下圖,在Visual C++選項(xiàng)卡中多了DDK Project的項(xiàng)目類(lèi)型,選擇相應(yīng)的模板添加我們的項(xiàng)目,點(diǎn)擊確定 
    image
  5. 確定后出現(xiàn)DDKWzard的項(xiàng)目創(chuàng)建頁(yè)面,在“Choose the DDKBUILD you want to use”中選擇“ddkbuild.cmd”或者“ddkbuild.bat”,在其下面選擇我們要為Who(2000,xp……)開(kāi)發(fā)的驅(qū)動(dòng)。 
    最后finish 
    image
  6. 在解決方案中便是由DDKWzard為我們自動(dòng)生成的一個(gè)簡(jiǎn)單的驅(qū)動(dòng)程序框架。 
     image 
  7. 最后點(diǎn)擊F6生成解決方案,成功生成后在項(xiàng)目的objchk_win7_x86/i386文件夾下會(huì)生成幾個(gè)文件 
    driver1.obj —編譯生成的2進(jìn)制文件 
    driver1.pdb—用于調(diào)試時(shí)使用的符號(hào)文件 
    vc90.pdb—–用于調(diào)試時(shí)使用的符號(hào)文件 
    driver1.sys—就是我們拭目以待的驅(qū)動(dòng)程序文件