注:转载请注明出处,谢谢!
编写驱动程序, 现网上大部分文章都是关于VC + Windows DDK + DriverStudio的配置,但如果只是简单的开发,使用DriverStudio实在是没有必要。查阅了相关资料,在前人的基础上经过自己的摸索,总结了一套简单开发的环境配置:UE + Windows DDK + DebugView。
开发环境: Windows XP SP2
编辑工具: UltraEdit
编译工具: Windows DDK(XP)
调试工具: DebugView(4.70.0.0)
1、安装
Windows XP 和 UltraEdit 就不用说了,DebugView 不需要安装,解压缩即可以使用。这里主要讲 Windows DDK 的安装,Windows DDK 安装的时候,安装路径的文件夹不能有空格,不然可能在编译的时候出现问题(注:我没有试过,只是网友有这种说法),我是安装在C:/WinDDK目录下面。
2、配置
所有的 Windows DDK 开发,在源文件夹下面,除了源文件之外,应该还有 MAKEFILE 和 SOURCES 文件,其中的 MAKEFILE 文件大都一样,都只有一句话:
!INCLUDE $(NTMAKEENV)/makefile.def
而 SOURCES 文件的配置,有两个地方需要修改:
TARGETNAME=Drivers
TARGETTYPE=DRIVER
TARGETPATH=OBJ //这里为编译的目标文件路径
INCLUDES=$(BASEDIR)/inc
SOURCES=Drivers.c //这里为DDK项目用到的c和cpp文件,多个文件用空格分开
接着是编译文件的配置。为了编译方便,我做了一个bat文件,和源文件放在同一个目录下面。bat文件的名字为:DDKBuild.bat:
@ECHO OFF
ECHO %CD%
SET SUC_PATH=%CD%
IF NOT EXIST %1 GOTO END
IF NOT EXIST %SUC_PATH% GOTO END
CALL %1/BIN/SETENV.BAT %1 %2
CD /D %SUC_PATH%
BUILD -ceZ
其中的 %1 为 Windows DDK 的安装路径,如我的电脑上面,/BIN/SETENV.BAT 文件是在 C:/WinDDK/2600 目录下面,因此这里为:C:/WinDDK/2600;%2为编译的版本,可以为 CHECKED 和 FREE 。
最后为 UltraEdit 的配置,在 UltraEdit 的《高级》菜单中选择《工具配置》,其中:
“命令”如下:
菜单项名称:DDKBuild
命令行: %PDDKBuild.bat C:/WinDDK/2600 CHECKED
工作目录: %P
“选项”如下:
“程序类型”为DOS程序
“输出”如下:
选中“输出到列表框”和“捕获输出”
“确定”之后,在《高级》菜单下面,会生成一个名为:《DDKBuild》的菜单项,点击此菜单编译,在源代码目录下面会生成下面文件和文件夹:
obj
objchk(CHECKED版本)
buildchk.log(CHECKED版本)
不同配置可能生成的文件夹和文件有不同,但基本大同小异。在objchk/i386/目录下面,可以看到一个后缀为“.sys”的文件,这就是我们编译出来的目标文件了!
3、调试
关于使用 DebugView 调试程序很简单,在网上可以找到很多有关资料,这里就不在详述。