http://harborwan.blog.sohu.com/39762230.html
通常驅動程序的調試都是用ddk在cmd中完成的。這部分我暫時略過。下面先介紹如何設置vc++6.0在Visual Studio 6.0集成環境中開發設備驅動程序的方法。
在Windows上,Windows DDK提供的開發環境是基于命令行的,操作起來極為不便,而Visual Studio 6.0給我們提供了非常友好易用的集成環境,讓我們有如虎添翼之感。
那么,能否利用Visual Studio的集成環境來開發驅動程序呢?答案是可以的。通過對Visual Studio集成環境的簡單設置,創建好自己的驅動開發集成環境就可以了。
1,
第一:安裝Vc++6.0,我裝的是英文版,中文版應該也可以,不過我沒試。
第二:安裝winXP DDK,注意,安裝目錄中間不能有空格,比如D:\Program Files不行,
我直接裝在了D盤,裝完后設置環境變量DDKROOT為安裝目錄D:\WINDDK\2505。
2,創建一個目錄,作為開發目錄,我是利用<<PCI設備開發寶典>>的光盤中的工程文件PCI9052Demo,直接考到E盤,所以,工作目錄下是E:\PCI9052Demo
3,工作目錄下創建一個批處理文件MakeDrvr.bat,內容如下:
@echo off
if "%1"=="" goto usage
if "%3"=="" goto usage
if not exist %1\bin\setenv.bat goto usage
call %1\bin\setenv %1 %4
%2
cd %3
build -b -w %5 %6 %7 %8 %9
goto exit
:usage
echo usage MakeDrvr DDK_dir Driver_Drive Driver_Dir free/checked [build_options]
echo eg MakeDrvr %%DDKROOT%% F: %%WDMWorkshop%% free -cef
:exit
解釋以下:
1% 是DDK_dir,也就是ddk的安裝目錄
2% 是Driver_Drive,是你工作目錄所在的盤符,這里是E:
3% 是Driver_Dir,是你工作目錄的路徑,這里是E:\PCI9052Demo
4% 是編譯模式,checked表示調試模式,free表示發行模式,這里是出問題的地方,后面再說。
該批處理首先對傳遞的參數作一些檢查,然后調用ddk的setenv命令設置環境變量,然后改變目錄為源程序所在驅動器和目錄,并最后調用build,-b保證顯示完全的錯誤信息,-w保證在屏幕上輸出警告,在vc ide里的output窗口中可以看到這些錯誤和警告。
4,建立一個空白工程
選File的new菜單項,然后選project欄的makefile,然后輸入路徑,一路next下去即可,visual studio提供兩種配置win32 debug和win32 release. 按照cant的《windows wdm 設備驅動程序開發指南》方法,可以刪除掉,添加Win32 Checked和 Win32 Free
5,VC的Project->settings里面改變設置
修改這兩種配置
=============================================================
Free
=============================================================
build command line:
e:\PCI9052Demo\MakeDrvr %DDKROOT% e: e:\PCI9052Demo free
rebuild all opinions:
-nmake /a
output filename:
PCI9052Demo.sys
browse info file name:
objfre\i386\PCI9052Demo.bsc
=============================================================
Checked
=============================================================
build command line:
e:\PCI9052Demo\MakeDrvr %DDKROOT% e: e:\PCI9052Demo checked
rebuild all opinions:
-nmake /a
output filename:
PCI9052Demo.sys
browse info file name:
objfre\i386\PCI9052Demo.bsc
6.添加源文件到工程
可以新建,也可