WDK10驅(qū)動開發(fā)包安裝教程
工具下載: 編程軟件:VS2015 WDK10離線安裝包:http://pan.baidu.com/s/1gf2AG8N?(測試有效)
【1】安裝WDK10驅(qū)動開發(fā)包步驟:
1、下載VS2015,安裝Window 10 SDK.
2、下載WDK10離線包(在線包下載時容易出現(xiàn)問題)
3、WDK10安裝過程中,一般為默認安裝路徑來安裝,因為正好VS2015的頭文件庫也在這個路徑.
4、WDK10安裝完成后,打開VS2015便有以下驅(qū)動開發(fā)選擇:
【2】VS2015驅(qū)動工程的配置設(shè)置:
1、屬性頁 ---> C/C++?---> 等級警告設(shè)置為3.
2、Driver Settings(驅(qū)動設(shè)置) ?---> Target Platform(目標平臺)設(shè)置為Desktop(桌面).
3、Driver Settings(驅(qū)動設(shè)置) ?---> Target OS Version設(shè)置為Win7(因為我的測試機是Win7,如果你是Win10,那么你選Win10)
4、Inf2Cat--->Run Inf2Cat設(shè)置為否
(參考:http://blog.csdn.net/doublestarts/article/details/37922819)
5、Driver Signing(驅(qū)動數(shù)字簽名)??---> Sign Mode設(shè)置為Off
6、編譯驅(qū)動程序為X64 (現(xiàn)在很少X86的系統(tǒng)了吧,X64系統(tǒng)不能使用X86的驅(qū)動程序)
【3】安裝過程中容易出現(xiàn)的錯誤:
一、無法找到"ntddk.h":(或是無法找到其他頭文件或庫文件)
原因:VS2015安裝時,可能你選了安裝兩個Windows 10 SDK開發(fā)包,導(dǎo)致編譯時出現(xiàn)此類錯誤.
解決辦法1:屬性頁 --->目標平臺版本(選擇使用SDK的版本):我的ntddk.h在10.0.10240.0版本的SDK上,那么我選擇10.0.10240.0的SDK版.
我發(fā)現(xiàn)我提供的WDK10默認在10.0.10240.0版本的SDK的路徑上搜索它所需的ntddk.h頭文件,如果你沒有安裝10.0.10240.0版本的SDK,那么可能導(dǎo)致無法編譯,一種方法是正確安裝10.0.10240.0版本的SDK,如果出現(xiàn)安裝不上,編譯驅(qū)動程序時,它提示哪些文件無法找到,你就把那個文件得“整個目錄”,復(fù)制進你所安裝的SDK的目錄上(路徑一定要模擬他提示的路徑),將所有所需文件復(fù)制過去之后,即可使用其他版本的SDK進行編譯.
【4】加載驅(qū)動程序:
一、顯示DbgPrintf字符串信息所需安裝的:
1、DbgView軟件。微軟下載地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/debugview
2、WIN7下注冊表修改,將以下代碼寫到.txt文件,將后綴改成.reg,注冊此項.重啟計算機:
Windows?Registry?Editor?Version?5.00?? ?? [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession?ManagerDebug?Print?Filter]?? "DEFAULT"=dword:0000000f
3、DbgView軟件必須使用管理員權(quán)限打開
4、在Capture選項里,把那幾個選項都扣上,使用加載驅(qū)動程序(網(wǎng)上找或自己寫加載驅(qū)動服務(wù)的程序),即可看見DbgPrintf字符串信息輸出了.
5、禁用強制驅(qū)動程序簽名(WIN7開機F8選擇禁用強制驅(qū)動程序簽名)
6、關(guān)閉兼容性助手:cmd的services.msc命令打開服務(wù),“Program Compatibility Assistant Service”服務(wù)選擇為禁用.
【4】測試:
一、寫測試代碼:
二、編譯:
三、使用DbgView軟件查看DbgPrintf: