首先,windows下驅動開發,要有一整套的開發除錯工具。在本例子中要用到如下工具:
windbg -- windows下核心模式驅動除錯的一大利器。(microsoft開發的哦!很好找的)。
vmware 5.5.4虛擬機器,安裝windows xp sp2的虛擬機器。(用於遠端除錯windows驅動,省著開兩台機器,具體配置方法下面會介紹的。)。
visual c++ 6.0,
windows ddk 3790.1830
什麼你沒有?趕緊去找啊。
在vmware中將系統配置為除錯模式,為虛擬機器新增乙個com口裝置,用管道的方式連線到主系統。
在虛擬機器的屬性頁
選擇其中的edit virtual machine settings->hardware->add->next->serial port->output to named pipe-next.
設定中選擇:
named pipe
\\.\pipe\com_1
this end is the server
按確定完成。
啟動虛擬機器
進入系統後修改系統分割槽下的boot.ini檔案(通常該檔案是隱藏的,只要在資源管理器的「工具」->「資料夾選項」->「檢視」在「高階設定」中將,「隱藏受保護的作業系統檔案 (推薦)」前的對號取消,選中「顯示系統資料夾內容」和「顯示隱藏檔案」,按「確定」返回,就可以檢視,將boot.ini檔案的內容改成如下形式。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\windows="microsoft windows xp professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\windows="microsoft windows xp professional - debug" /noexecute=optin /fastdetect /bootlog /debug /debugport=com1: /baudrate=115200
儲存檔案。重啟系統,就會看到啟動選單,其中顯示:
「microsoft windows xp professional"」和「microsoft windows xp professional - debug」兩個選項。
如果選前面的乙個,就會正常啟動系統,後面的乙個是我們要用到的系統除錯執行模式,如果不除錯驅動,不要選擇第二中啟動方式,(系統啟動速度會很慢的)。
下面來說明實用windbg的聯機除錯方法。
啟動windbg 選擇選單「file」->「kernel debug」->「com」
將baud rate設定為「115200」,port設定為「\\.\pipe\com_1」,選中「reconnect」,「pipe」,這裡需要等一下在按確定,將虛擬機器啟動到啟動選單時,選擇第二項,進入除錯模式。這時再按windbg中的確定。如果連線成功,會出現類似這樣的提示
「connected to windows xp 2600 x86 compatible target, ptr64 false」
「kernel debugger connection established.」
證明已經建立成功了。
再在檔案中新增一點個性化的東西。開啟「ddk安裝目錄\src\general\cancel\sys」下cancel.c檔案,在「driverentry」函式中新增如下**
開始的位置dprint("this is a driver debug test !!!");
windows驅動入門 1
1.搭建編譯環境 1 安裝編譯器 vc6.0或vc2003 vc2005等。2 安裝驅動開發工具包ddk driver development kits 下找到你要的目標平台。注意 這裡的版本指的是將要執行你編譯的驅動的機器作業系統版本,與你自己現在執行作業系統版本無關。2.編寫第乙個驅動 hell...
windows驅動開發學習入門調研
公司專案中需要windows驅動的方面的工作。以前我也有興趣,只是沒有需求,也沒有深入,這個主要是沒有動力。這次公司有這個需求,我覺得有動力,可以向這個方向努力一下。那麼這就又開始對windows驅動開發先做一下初級階段的調研 windows驅動開發如何入門 wdk 環境搭建 vs2015 wdk1...
DDK程式設計之 Windows裝置的具體屬性
ddk程式設計之 windows裝置的具體屬性 define spdrp devicedesc 0x00000000 devicedesc r w 裝置描述,如 realtek rtl8139 family pci fast ethernet nic,intel r pro 100 ve netwo...