錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務,錦州廣廈維修電腦,公司IT外包服務
topFlag1 設為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務項目 服務報價 維修流程 IT外包服務 服務器維護 技術文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統|0416-3905144熱誠服務技術文章
驅動程序環境搭配(VS2010 + WDK + VirtualDDK + VMware)

作者: 佚名  日期:2023-07-08 20:40:53   來源: 本站整理

 以前一直都是用 VS2008 + DDKWizard + WinDbg 來進行驅動程序的開發調試的,

使用 DDKWizard 來搭配調試環境呢,在 VS2008 下也還算方便,

因為不需要自己去設置一些什么包含文件啊,源代碼路徑啊之類的就可以直接編譯驅動程序源碼,

安裝好 DDKWizard 后,在 VS2008 中就會自動出現一個開發驅動程序的項目框架,

就跟選擇創建 WinForm 應用程序一樣的,創建好 DDK 項目后也是可以直接在 VS2008 下編譯的,

所以在開發上也還方便,但是在調試上的話,就麻煩了,

在 WinDbg 中有一大堆東西要設置,在虛擬機上也要設置一些命令,

關于 WinDbg + VMware 開發調試驅動程序在網上有比較有名的酒若琳的文章,

不過那是很多年以前的文章了,有興趣的可以去谷歌搜索 "酒若琳 WinDbg" ,應該是可以找到那篇文章的。

同時對于這一塊的使用,也可以參考筆者的文章《驅動開發 – WDK 調試及 SVN 環境搭配》,

博文地址為:http://www.cnblogs.com/BoyXiao/archive/2011/05/06/2038578.html

但是在使用 DDKWizard + VS2008 進行驅動開發時,是不能夠直接通過 VS2008 來調試的

(這里可能有其他門路來實現,但是筆者沒有實現過),

而一般都是在 WinDbg 中設置好符號文件的路徑以及源代碼的路徑,然后再驅動程序的源代碼中嵌入一些匯編代碼,

當然這些匯編代碼只是簡單的用來實現一個中斷,從而在 WinDbg 調試器中會生成一個斷點。

這樣調試起來速度慢,也不好控制,所以有時候覺得在做開發的時候,在調試上花去的時間太多了,會不爽。

                                       

在本次博文中,將要介紹的是一個開源項目 VirtualDDK(VirtualKD 中包含了 VirtualDDK),

通過這個開源項目即可以很好的實現在 VS2010 以及 VS2008 下直接調試驅動程序,

同時對于 VirtualDDK 的環境搭配也是很簡單的,下面就直接上一些圖片以及一些注解來說明,

由于文章存在大量的截圖,所以讀者只要按著截圖來做基本上都是可以成功的。

同時下面給出官網上的一篇關于利用 VirtualDDK 和 VS 來調試驅動程序的文章(內容非常詳細),

基本上通過筆者的這篇博文和官網上的博文就完全可以搭建驅動程序開發環境成功了 !

同時在官網上的環境為 VS2008 的。而且在官網的博文中還有兩個比較好的驅動例子の !

  • 1. A dummy driver that simply prints a message when it is loaded .

  • 2. A ramdisk driver, that creates a virtual hard disk .

《Making Your First Driver – Complete WalkThrough》

博文地址為:http://articles.sysprogs.org/visualddk/firstdriver/

         

                                       

前期設置:

               

安裝虛擬機和 VS2010,然后再網絡和共享中心中進行一些設置,

設置即是將本地連接網卡,安裝虛擬機后生成的兩塊虛擬網卡的 IP 地址都改為自動獲取 IP 地址,

同時需要修改一塊虛擬網卡的共享屬性。

2011-07-31_142418

2011-07-31_142322

2011-07-31_142238

2011-07-31_142205

在虛擬機中安裝好 Windows 操作系統并且設置網卡類型為 NAT 類型

image

將本地主機開啟遠程,并且將本地主機的防火墻全部關掉

(這一步,看你運氣了,有時候不設置這些東西,在 VS2010 下也是可以利用 VirtualDDK 調試驅動程序成功的,

但是你人品不好的時候就難說了,就比如我自己,前些日子不設置這些東西也都可以調試的,

但是這幾天死活調不上,結果把上面這兩東西設置了就可以調試了,估計是因為 VirtualDDK 需要 UDP 來進行調試,

所以,防火墻還是禁用比較好,但是我一直都不明白這個調試和開不開遠程有何關系,感覺著不是扯淡嘛)

2011-07-31_142516

2011-07-31_142722

同樣在你的虛擬機操作系統上,我這里安裝的是 XP ,

也一樣需要開啟遠程并且關閉防火墻,理由同上,看你人品了。

2011-07-31_142557

2011-07-31_142640

                         

                      

檢測是否設置成功:

           

設置好上面這些東西后,我們需要來檢測一下,這個檢測是必要的,

因為如果你檢測沒有通過的話,在后面是絕對不可能成功的利用 VS2010 + VirtualDDK 來調試驅動程序的

1. 在主機里面 Ping 虛擬機上的 XP 操作系統(必須成功)。

2. 在虛擬機里面的 XP 操作系統中 Ping 本地主機(必須成功)。

3. 在虛擬機里面的 XP 操作系統中通過網上鄰居訪問本地主機(必須成功)。

2011-07-31_142947

image

                      

                               

下載和安裝 VirtualDDK:

           

安裝好 VirtualDDK 后(一般安裝在 C:\Program Files\VisualDDK 目錄下),

可以在該目錄下看到一個 Target 文件夾,

將這個 Target 文件夾拷貝到虛擬機上的 XP 操作系統下,并且運行 Target 文件夾下的 vminstall.exe,

然后將虛擬機中的 XP 操作系統重新啟動(安裝完 vminstall.exe 后會提示需要重啟系統)。  

                          

                     

VS2010 創建 VirtualDDK 項目:

           

打開 VS2010 ,創建 VirtualDDK 項目,創建過程如下截圖:

2011-07-31_013137

2011-07-31_013316

創建好 VirtualDDK 項目后,您可以嘗試著生成以下解決方案,可以看到很容易的生成了解決方案,

也會在指定的目錄下生成 .sys 文件和 .pdb 文件。

                            

                 

調試驅動程序:

           

開始調試驅動程序:

首先是啟動虛擬機中的 XP 操作系統,等到 XP 操作系統出現以下界面時(你可以通過上下鍵來使得 30 秒倒計時停止),

2011-07-31_143104

到 VS2010 中,完成以下操作:

2011-07-31_143555

2011-07-31_143137

2011-07-31_143617

當出現下面的錯誤提示時,直接確定忽略,然后重新 Start Debug 即可

2011-07-31_143648

然后再加載我們自己寫的這個驅動程序即可,這樣就會出現調試界面了,

2011-07-31_144059

在虛擬機中也會顯示一些消息:

2011-07-31_144117

                         

                 

在 VBox 下調試驅動程序:

                          

在 VBox 下調試驅動程序其實和在 VMware 下調試是差不多的,也就是具體的操作和上面的操作基本上是一樣的,

但是需要改變一點點東西,

首先定位到 VBox 的安裝目錄(C:\Program Files\Oracle\VirtualBox),

可以在該目錄下看到一個 VBoxDD.dll,我們需要將這個文件的名字改為 VBoxDD0.dll,

image

改名后,我們再定位到 VirtualDDK 的安裝目錄下(C:\Program Files\VisualDDK\VirtualBox\x86),

并且將該目錄下的 VBoxDD.dll 拷貝到上面的這個目錄(C:\Program Files\Oracle\VirtualBox)下。

image

至于其他的步驟的話,就和前面在 VMware 下的操作是一樣的了。

 



熱門文章
  • 機械革命S1 PRO-02 開機不顯示 黑...
  • 聯想ThinkPad NM-C641上電掉電點不...
  • 三星一體激光打印機SCX-4521F維修...
  • 通過串口命令查看EMMC擦寫次數和判...
  • IIS 8 開啟 GZIP壓縮來減少網絡請求...
  • 索尼kd-49x7500e背光一半暗且閃爍 ...
  • 樓宇對講門禁讀卡異常維修,讀卡芯...
  • 新款海信電視機始終停留在開機界面...
  • 常見打印機清零步驟
  • 安裝驅動時提示不包含數字簽名的解...
  • 共享打印機需要密碼的解決方法
  • 圖解Windows 7系統快速共享打印機的...
  • 錦州廣廈電腦上門維修

    報修電話:13840665804  QQ:174984393 (聯系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號:遼ICP備2023002984號-1
    上門服務區域: 遼寧錦州市區
    主要業務: 修電腦,電腦修理,電腦維護,上門維修電腦,黑屏藍屏死機故障排除,無線上網設置,IT服務外包,局域網組建,ADSL共享上網,路由器設置,數據恢復,密碼破解,光盤刻錄制作等服務

    技術支持:微軟等
    主站蜘蛛池模板: 精选观看中文字幕高清无码| 亚洲精品久久久久无码AV片软件| 国产成人无码a区在线观看视频免费 | 日韩精品无码免费专区午夜不卡 | 无码毛片内射白浆视频| 粉嫩大学生无套内射无码卡视频| 亚洲av无码专区在线观看下载 | 亚洲av专区无码观看精品天堂 | 特级毛片内射www无码| 亚洲日韩精品A∨片无码| 无码少妇丰满熟妇一区二区| 亚洲国产精品成人精品无码区| 日韩国产成人无码av毛片| 亚洲精品97久久中文字幕无码| 亚洲熟妇无码一区二区三区| 成人午夜亚洲精品无码网站| 国产成人无码精品久久久露脸| 中文无码字幕中文有码字幕| 亚洲av日韩av无码| 中文午夜乱理片无码| 中文字幕精品无码一区二区| 无码综合天天久久综合网| 亚洲AV无码AV吞精久久| 日韩免费无码一区二区三区| 国产激情无码视频在线播放性色| 国产一区二区三区无码免费| 精品亚洲AV无码一区二区三区| 亚洲成AV人片天堂网无码| 国产成人精品一区二区三区无码 | 亚洲精品无码mv在线观看网站| 国产成人无码精品久久久露脸 | 性无码一区二区三区在线观看| 亚洲AV无码乱码在线观看牲色| 性色av无码免费一区二区三区| 国产精品午夜无码AV天美传媒| 无码日韩精品一区二区免费| 乱人伦人妻中文字幕无码| 国产成年无码久久久久下载 | 日韩免费无码一区二区三区| 精品无码日韩一区二区三区不卡 | 人妻无码一区二区三区四区|