驅動開發環境及其雙機調試環境搭建
開發環境搭建
使用工具:vs2015,Windows 10 SDK_10.0.14393,WDK10.0.14393.0
(1)安裝VS2015 随便一個版本吧,我安裝的企業版
(2)安裝WDK10.0.14393 安裝WDK
(3)安裝Windows 10 SDK_10.0.14393.安裝SDK,這個首先可以嘗試從VS配置更新裡安裝。
控制台->解除安裝程式->vs2015->更改
選上這個SDK,然後更新。注意這個地方很有可能更新失敗,我在公司一次就更新成功,在家裡更新了好多次,最後都是hash校驗失敗啥的錯誤。最終無奈,去網上找離線安裝包,注意離線安裝包是一個幾百兆的壓縮檔案,不是那種很小的。很小的下載下傳下來,輕按兩下之後還是走的上面的那個流程。相當于下載下傳器。下載下傳器下載下傳下來的依然可能出現之前的hash校驗失敗。這個地方我嘗試了好多次。
TIP:最後一點就是一定要注意,SDK和WDK的第三位版本号一定要對上。我的是14393。
搭建輕按兩下調試環境
dump。
輕按兩下調試環境搭建很簡單。下面說下步驟:
1.安裝VMWARE,虛拟機。
2.安裝Win 64系統。(我是安裝的win7)。
3.把第二部安裝的系統UAC關掉。
4.在虛拟機裡安裝WMware Tools。這個在虛拟機設定裡可以直接更新。
5.在虛拟機裡直接安裝.net framework4(如果安裝的系統高于win7就不用了,win7,貌似是3.5的,之後都是大于等于4.0的)。
6.備份虛拟機目前鏡像。
上面安裝完虛拟機之後,接下來繼續搭建調試環境。
1.安裝windebug.
2.下載下傳VirtualKD然後把target檔案夾拷貝到虛拟機裡。
3.虛拟機裡管理者權限,找到剛剛下載下傳的VirtualKD,運作target檔案夾下的vminstall.exe。
4.然後在本機裡運作VirtualKD裡面的wmmon64.exe,設定調試路徑[Debugger path]為1安裝的windebug路徑
5.重新開機剛剛的虛拟機(注意此時本機的wmon64正在開啟着,在第3步裡)。選擇這個啟動項:
然後會發現windebug自動啟動了,其實是被wmon喚醒的,然後電腦卡在這個界面:
可以了解為現在是卡到了調試斷點,在windebug裡面直接按F5讓虛拟機裡的系統跑起來。
6.然後先别調試,先去下載下傳windows符号表:
http://msdn.microsoft.com/en-us/windows/hardware/gg463028.aspx對應找到自己系統的符号表。注意有SP1和RTM的差別。下載下傳之後安裝到C:\symbols這個目錄。
7.在windebug裡設定符号表路徑:
File->Sysbol file path
8.測試符号表是不是導入成功,此時先重新開機剛剛的虛拟機,進入到那個按f5之前的那一步。
輸入u KiInsertQueueApc看到下面這樣(u xxx是記憶體代碼反彙編):
就沒啥毛病了。