2009年8月28日 星期五

WDK + Microsoft Visual Studio 2008 Howto

安裝

Download Microsoft Visual Studio 2008 Express, and then install Visual C++ 2008 Express.

Dowload DDKBUILD.BAT, DDKBUILD.CMD, installer(ddkwizard) from here.(Manual is recommended)

複製 bbkbuild.bat, ddkbuild.cmd WDK安裝路徑下, ex: C:\WINDDK. 並執行安裝程式 - ddkwizard.


設定系統變數

在把install path加到系統變數Path(for ddkbuild.bat, ddkbuild.cmd).

新增一系統變數 WXPBASE 並給予變數值install path\{build number}.

Note: 俺的install pathC:\WINDDK{build number}7600.16385.0


設定Microsoft Visual C++ 2008

Run Wnidows Visual C++ 2008 Express.

工具 -> 選項 -> 專案和方案 -> C++目錄

選取右側的「顯示目錄(S)」為「可執行檔」,加入WDK執行檔的path

C:\WINDDK\{build number}\bin\x86

Note: 依情況增加路徑,或修改install path


選取右側的「顯示目錄(S)」為「Include檔案」,加入以下path

C:\WINDDK\{build number}\inc\ddk

Note: 依情況增加路徑,或修改install path


選取右側的「顯示目錄(S)」為「程式庫檔」,加入以下path

C:\WINDDK\{build number}\lib

C:\WINDDK\{build number}\lib\wnet\i386

Note: 依情況增加路徑,或修改install path


以上,完成環境設定。


Ms Visual C++ 2008中用WDK compile驅動程式

Step 1:

建立專案 -> DDK Project -> Empty Driver, 別忘了給專案一個名字.

Step 2:

接下來會看到Which DDK(s) do you want to use, 因為俺是在Windows XP下開發所以選擇Windows XP DDK

Note: 千萬別選「Create PREfast configuration」,不然會一直compile失敗,網路上好像也找不到原因,可能是我不會google的關係,再接再勵吧 !


Step 3:

複製WDK sample source files到專案目錄下

以俺的狀況為例, copy *.c, *.h, sources, makefile from

C:\WINDDK\{build number}\src\network\ndis\ndisprot\5x\sys

to project directory

C:\Documents and Settings\user name\My Documents\Visual Studio 2008\Projects\ndisprot\ndisprot


回到Ms Visual C++ 2008中的專案視窗

左方案總管Header Files -> 右鍵”加入” -> 現有項目

加入所有的header file


左方案總管Sources Files -> 右鍵”加入” -> 現有項目

加入所有的*.c, *.rc檔案


左方案總管Special Files -> 右鍵”加入” -> 現有項目

加入sources, makefile


上方功能表「建置」 -> 建置方案

Compile完沒有錯誤就代表成功了


另外有一個問題,雖然我們成功的compiledriver,但卻沒有安裝用的INF檔,可行的解決方式是到WDKsample裡找跟我們類型最接近的driver,拿它的INF來改。

沒有留言: