錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠(chéng)服務(wù),錦州廣廈維修電腦,公司IT外包服務(wù)
topFlag1 設(shè)為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務(wù)項(xiàng)目 服務(wù)報(bào)價(jià) 維修流程 IT外包服務(wù) 服務(wù)器維護(hù) 技術(shù)文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠(chéng)服務(wù)技術(shù)文章
驅(qū)動(dòng)程序環(huán)境搭配(VS2010 + WDK + VirtualDDK + VMware)

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

 以前一直都是用 VS2008 + DDKWizard + WinDbg 來進(jìn)行驅(qū)動(dòng)程序的開發(fā)調(diào)試的,

使用 DDKWizard 來搭配調(diào)試環(huán)境呢,在 VS2008 下也還算方便,

因?yàn)椴恍枰约喝ピO(shè)置一些什么包含文件啊,源代碼路徑啊之類的就可以直接編譯驅(qū)動(dòng)程序源碼,

安裝好 DDKWizard 后,在 VS2008 中就會(huì)自動(dòng)出現(xiàn)一個(gè)開發(fā)驅(qū)動(dòng)程序的項(xiàng)目框架,

就跟選擇創(chuàng)建 WinForm 應(yīng)用程序一樣的,創(chuàng)建好 DDK 項(xiàng)目后也是可以直接在 VS2008 下編譯的,

所以在開發(fā)上也還方便,但是在調(diào)試上的話,就麻煩了,

在 WinDbg 中有一大堆東西要設(shè)置,在虛擬機(jī)上也要設(shè)置一些命令,

關(guān)于 WinDbg + VMware 開發(fā)調(diào)試驅(qū)動(dòng)程序在網(wǎng)上有比較有名的酒若琳的文章,

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

同時(shí)對(duì)于這一塊的使用,也可以參考筆者的文章《驅(qū)動(dòng)開發(fā) – WDK 調(diào)試及 SVN 環(huán)境搭配》,

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

但是在使用 DDKWizard + VS2008 進(jìn)行驅(qū)動(dòng)開發(fā)時(shí),是不能夠直接通過 VS2008 來調(diào)試的

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

而一般都是在 WinDbg 中設(shè)置好符號(hào)文件的路徑以及源代碼的路徑,然后再驅(qū)動(dòng)程序的源代碼中嵌入一些匯編代碼,

當(dāng)然這些匯編代碼只是簡(jiǎn)單的用來實(shí)現(xiàn)一個(gè)中斷,從而在 WinDbg 調(diào)試器中會(huì)生成一個(gè)斷點(diǎn)。

這樣調(diào)試起來速度慢,也不好控制,所以有時(shí)候覺得在做開發(fā)的時(shí)候,在調(diào)試上花去的時(shí)間太多了,會(huì)不爽。

                                       

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

通過這個(gè)開源項(xiàng)目即可以很好的實(shí)現(xiàn)在 VS2010 以及 VS2008 下直接調(diào)試驅(qū)動(dòng)程序,

同時(shí)對(duì)于 VirtualDDK 的環(huán)境搭配也是很簡(jiǎn)單的,下面就直接上一些圖片以及一些注解來說明,

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

同時(shí)下面給出官網(wǎng)上的一篇關(guān)于利用 VirtualDDK 和 VS 來調(diào)試驅(qū)動(dòng)程序的文章(內(nèi)容非常詳細(xì)),

基本上通過筆者的這篇博文和官網(wǎng)上的博文就完全可以搭建驅(qū)動(dòng)程序開發(fā)環(huán)境成功了 !

同時(shí)在官網(wǎng)上的環(huán)境為 VS2008 的。而且在官網(wǎng)的博文中還有兩個(gè)比較好的驅(qū)動(dòng)例子の !

  • 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/

         

                                       

前期設(shè)置:

               

安裝虛擬機(jī)和 VS2010,然后再網(wǎng)絡(luò)和共享中心中進(jìn)行一些設(shè)置,

設(shè)置即是將本地連接網(wǎng)卡,安裝虛擬機(jī)后生成的兩塊虛擬網(wǎng)卡的 IP 地址都改為自動(dòng)獲取 IP 地址,

同時(shí)需要修改一塊虛擬網(wǎng)卡的共享屬性。

2011-07-31_142418

2011-07-31_142322

2011-07-31_142238

2011-07-31_142205

在虛擬機(jī)中安裝好 Windows 操作系統(tǒng)并且設(shè)置網(wǎng)卡類型為 NAT 類型

image

將本地主機(jī)開啟遠(yuǎn)程,并且將本地主機(jī)的防火墻全部關(guān)掉

(這一步,看你運(yùn)氣了,有時(shí)候不設(shè)置這些東西,在 VS2010 下也是可以利用 VirtualDDK 調(diào)試驅(qū)動(dòng)程序成功的,

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

但是這幾天死活調(diào)不上,結(jié)果把上面這兩東西設(shè)置了就可以調(diào)試了,估計(jì)是因?yàn)?VirtualDDK 需要 UDP 來進(jìn)行調(diào)試,

所以,防火墻還是禁用比較好,但是我一直都不明白這個(gè)調(diào)試和開不開遠(yuǎn)程有何關(guān)系,感覺著不是扯淡嘛)

2011-07-31_142516

2011-07-31_142722

同樣在你的虛擬機(jī)操作系統(tǒng)上,我這里安裝的是 XP ,

也一樣需要開啟遠(yuǎn)程并且關(guān)閉防火墻,理由同上,看你人品了。

2011-07-31_142557

2011-07-31_142640

                         

                      

檢測(cè)是否設(shè)置成功:

           

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

因?yàn)槿绻銠z測(cè)沒有通過的話,在后面是絕對(duì)不可能成功的利用 VS2010 + VirtualDDK 來調(diào)試驅(qū)動(dòng)程序的

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

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

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

2011-07-31_142947

image

                      

                               

下載和安裝 VirtualDDK:

           

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

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

將這個(gè) Target 文件夾拷貝到虛擬機(jī)上的 XP 操作系統(tǒng)下,并且運(yùn)行 Target 文件夾下的 vminstall.exe,

然后將虛擬機(jī)中的 XP 操作系統(tǒng)重新啟動(dòng)(安裝完 vminstall.exe 后會(huì)提示需要重啟系統(tǒng))。  

                          

                     

VS2010 創(chuàng)建 VirtualDDK 項(xiàng)目:

           

打開 VS2010 ,創(chuàng)建 VirtualDDK 項(xiàng)目,創(chuàng)建過程如下截圖:

2011-07-31_013137

2011-07-31_013316

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

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

                            

                 

調(diào)試驅(qū)動(dòng)程序:

           

開始調(diào)試驅(qū)動(dòng)程序:

首先是啟動(dòng)虛擬機(jī)中的 XP 操作系統(tǒng),等到 XP 操作系統(tǒng)出現(xiàn)以下界面時(shí)(你可以通過上下鍵來使得 30 秒倒計(jì)時(shí)停止),

2011-07-31_143104

到 VS2010 中,完成以下操作:

2011-07-31_143555

2011-07-31_143137

2011-07-31_143617

當(dāng)出現(xiàn)下面的錯(cuò)誤提示時(shí),直接確定忽略,然后重新 Start Debug 即可

2011-07-31_143648

然后再加載我們自己寫的這個(gè)驅(qū)動(dòng)程序即可,這樣就會(huì)出現(xiàn)調(diào)試界面了,

2011-07-31_144059

在虛擬機(jī)中也會(huì)顯示一些消息:

2011-07-31_144117

                         

                 

在 VBox 下調(diào)試驅(qū)動(dòng)程序:

                          

在 VBox 下調(diào)試驅(qū)動(dòng)程序其實(shí)和在 VMware 下調(diào)試是差不多的,也就是具體的操作和上面的操作基本上是一樣的,

但是需要改變一點(diǎn)點(diǎn)東西,

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

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

image

改名后,我們?cè)俣ㄎ坏?VirtualDDK 的安裝目錄下(C:\Program Files\VisualDDK\VirtualBox\x86),

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

image

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

 



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

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

    技術(shù)支持:微軟等
    主站蜘蛛池模板: 日韩va中文字幕无码电影| 免费A级毛片无码A| 精品无码久久久久久尤物| 午夜福利av无码一区二区| 亚洲人成网亚洲欧洲无码 | 免费一区二区无码视频在线播放| 日韩少妇无码喷潮系列一二三| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 人妻精品无码一区二区三区| 国产日韩AV免费无码一区二区三区 | 免费无码VA一区二区三区| 亚洲中文字幕无码专区| 精品成在人线AV无码免费看| 亚洲一区无码中文字幕| 无码一区二区三区免费视频| 乱色精品无码一区二区国产盗| 精品久久久久久无码人妻蜜桃| 亚洲AV无码专区亚洲AV桃| 人妻无码αv中文字幕久久| 丰满日韩放荡少妇无码视频| 在线无码视频观看草草视频| 亚洲av无码专区亚洲av不卡| 精品无码人妻夜人多侵犯18| 人妻无码一区二区三区免费| 亚洲AV综合色区无码另类小说| 久久国产精品无码网站| 国产成人年无码AV片在线观看| 人妻少妇看A偷人无码精品| 久久久无码精品人妻一区| 亚洲中文字幕无码av永久| 亚洲av无码专区国产不乱码| 免费A级毛片无码无遮挡内射| 日韩av无码一区二区三区| 99久久无码一区人妻a黑| 69堂人成无码免费视频果冻传媒| 中日韩精品无码一区二区三区| 人妻丝袜中文无码av影音先锋专区| 精品无码国产自产拍在线观看| 一本色道无码道DVD在线观看 | 久久久久成人精品无码| 中文无码成人免费视频在线观看|