WDK(Windows Driver Kit)是微軟公司推出的windows驅(qū)動程序包,這是一種完全集成的驅(qū)動程序開發(fā)系統(tǒng),它包含Windows Driver Device Kit (DDK),用于測試 Windows 驅(qū)動器的可靠性和穩(wěn)定性。
Windows 驅(qū)動程序基礎(chǔ) (WDF) 簡化了 Windows 驅(qū)動程序的開發(fā)和支持。
頭文件重構(gòu)(Windows Vista 和更高版本)通過提供更簡單的目錄結(jié)構(gòu)、避免聲明沖突以及對所有支持的 Windows 版本使用單一頭文件集,減小頭文件的復(fù)雜性。
可安裝文件系統(tǒng) (IFS) 工具包將頭、庫、示例以及文檔作為 WDK 的一部分分發(fā)。
驗證程序和靜態(tài)分析工具(如 PREfast 和靜態(tài)驅(qū)動程序驗證程序)幫助您在編譯時查找 bug。
一、源代碼編譯
在微軟官網(wǎng)上下載 WDK 開發(fā)包,里面有 WDK 編譯器,鏈接器,配置工具,如NMAKE。然后,用記事本寫 C 或 C++ 文件,編譯,鏈接就 OK 了。WDK 庫是一定要的,否則頭文件,導(dǎo)入庫都沒有,就無法編譯了。至于編譯器和連接器,其實就是普通的 cl.exe 和 link.exe 兩個工具,和 VS 中的 VC 編譯鏈接器是同一個。編譯的方法是:在自己的目錄如 c:\wdkdemo 中有個待編譯的 wdkdemo.c ,那么需要在這個目錄里加入兩個文件,一個是 makefile (無后綴名)的固定文件名,內(nèi)容也是固定的:INCLUDE $(NTMAKEENV)\makefile.def另外一個文件是 sources (無后綴名)的固定文件名,內(nèi)容為:targettype=drivertargetname=objsources=wdkdemo.c這兩個文件都是讓nmake 工具配置用的,最終調(diào)用合適的編譯器和鏈接器開關(guān)來編譯出 sys 。WDK包有個 build 命令行工具,當(dāng)配置好了以上兩個文件后。雙擊 build 工具,進(jìn)入到 c:\wdkdemo 目錄,輸入命令 build 回車,然后只要 wdkdemo.c 源代碼正確,就會生成 sys 文件了。
二、sys 文件安裝
在網(wǎng)上下載個免費的驅(qū)動安裝工具,這個不難吧,一般調(diào)試用的驅(qū)動,建議在安裝的時候,千萬記得要選擇手動模式,因為自啟動模式,如果驅(qū)動有BUG ,會導(dǎo)致藍(lán)屏,重啟機器后,驅(qū)動因自啟動又被加載,導(dǎo)致再次藍(lán)屏。
三、調(diào)試
在微軟官網(wǎng)下個 windbg ,但 windbg 需要調(diào)試機和被調(diào)試機模式,因此 windbg 最好配合 vmware 來使用。我感覺,sys 文件編譯是很麻煩的。不如編譯應(yīng)用程序,只要一個 VS 可以搞定大部分的事情。驅(qū)動開發(fā)需要很多關(guān)于其他工具的知識。譬如,用記事本或者NOTEPAD++編輯源代碼感覺很吃力,因為 VS 沒有驅(qū)動開發(fā)的項目,因此 VS 不直接支持驅(qū)動開發(fā),當(dāng)然,可以進(jìn)行配置,但 VS 配置驅(qū)動是很麻煩的。另外, windbg 有很多的調(diào)試命令,當(dāng)然常規(guī)的命令一般4、5個就夠用了。VMWARE 的配置也是很麻煩的,當(dāng)初,我自己研究了很長時間,網(wǎng)上雖然有教程,但都是講得不全面,譬如要配置10個地方,網(wǎng)上都是只說7、8個,導(dǎo)致 VMWARE 配置不成功。驅(qū)動開發(fā)還有 DRIVER STUDIO 這么一個 IDE 可以使用,另外還有 IRPTRACE ,DEVICE TREE , DEBUG VIEWER 等工具。我開發(fā)驅(qū)動的工具是 VMWARE + VS2010 + WDK + WINDBG + WINOBJ + IRPTRACE + DEBUG VIEWER 這幾個。
1、下載文件
2、解壓文件(推薦winrar壓縮軟件)
3、點擊“KitSetup.exe”開始安裝
1贛教云教學(xué)通2.0-贛教云教學(xué)通2.0下載 v5......
2step7 microwin-西門子PLC S7......
3百度網(wǎng)盤清爽精簡純凈版-網(wǎng)盤工具-百度網(wǎng)盤清爽精......
4360安全瀏覽器-瀏覽器-360安全瀏覽器下載 ......
5谷歌瀏覽器 XP版-谷歌瀏覽器 XP版-谷歌瀏覽......
6Kittenblock重慶教育專用版-機器人編程......
7seo外鏈助手(超級外鏈) -SEO外鏈優(yōu)化工具......
8Notepad3-記事本軟件-Notepad3下......