- 15
- 0
- 约2.86千字
- 约 6页
- 2018-06-09 发布于山西
- 举报
用VisualStudio构造WDM设备驱动程序
用Visual Studio 2005构造WDM设备驱动程序WDM(Win32 Driver Model),即Win32驱动程序模型,是Microsoft力推的全新驱动程序模式,旨在通过提供一种灵活的方式来简化驱动程序的开发,在实现对新硬件支持的基础上减少并降低所必须开发的驱动程序的数量和复杂性。 目前,用于WDM驱动程序开发的主要工具是Microsoft公司提供的DDK(Driver Development Kit),其中包含许多内核态函数及数据结构的定义;包含很多非常有用的调试、测试及构造工具,还提供了许多驱动程序实例和丰富的帮助文档。此外,开发人员通常都会在Visual Studio集成开发环境中创建、编辑设备驱动程序项目。 在Visual Studio中创建了程序的工程之后、必须经过编译、链接才能构成程序可执行文件。但由于Visual Studio不能用于内核程序的构造,所以常常需要退出编辑环境,使用DDK中提供的专用工具Build来构造设备驱动程序。为了提高驱动程序的开发效率,简化驱动程序的构造过程,我们可以通过改变设置,从Visual Studio直接构造WDM驱动程序。 其创建和构造过程Visual Studio 2005的正确安装。
、DDK安装 编写WDM设备驱动程序之前需要安装Microsoft的驱动程序开发工具包DDK。 安装DDK后,在DDK程序组下有Check和Free两个编译环境,Check环境用于编译带调试信息的驱动程序,Free则是编译正式发布版本的环境。 、环境变量设置 C:\Program Files\Microsoft Visual Studio 8\VC\bin);
(2) 建立环境变量 winddk,winddk的值为IFS DDK的安装路径,如c:\winddk\3790;
(3) 注销。
工程设置:
(1) 新建 Empty Project;
(2) 选择1中建立的Project,右键,Properties;
(3) 在Configuration Properties选项中,选择General,在Configuration Type中选Makefile;
(4) 在Configuration Properties选项中,选择NMake,在Build Command Line 中
填入如下信息:
MakeDriver chk $(inputdir)
如果要建立free版本,只需把chk改为fre;
(5) 说明:设置信息可参考图1和图2,MakeDriver.bat的源代码附在最后按F7就可以编译了。
图1:Configuration Type设置
图2:Build Command Line设置
MakeDriver的源代码
@echo off
call %winddk%\bin\setenv %winddk% %1 wnet(如是xp应为wxp)
cd /d %2
build -c
echo OK MakeDriver
exit
WDM驱动程序组成 一个最基本的设备驱动程序应该包含2部分:驱动程序源文件和驱动程序构造文件。 DDK Build命令行实用程序是构造驱动程序的主要工具,使用正确的编译器和连接器设置,通过调用nmake实用程序来构造驱动程序。Build把构造进展的详细信息和错误结果显示到标准输出。Build本身其实相当简单,编译的大部分工作实际上由Build传递给nmake来进行。由于Build使用的编译和连接工具与Visual Studio相同,可以从Visual Studio中激活Build,因此可以设置VC++,从Visual Studio直接构造WDM驱动程序。这将使驱动程序的编辑与构造在相同的环境中进行,从而使其开发更加方便。 采用的方法是使用一个Makefile项目,它激活Build命令行实用程序构造驱动程序。所有必要的构造文件必须正确设置,包括SOURCES文件、MakeDrvier.bat、makefile文件。 1、SOURCES文件 Build在当前目录中查找一个叫做SOURCES的nmake宏文件,了解驱动程序构造的详细信息。文件如下:TARGETNAME=TARGETTYPE=DRIVER DRIVERTYPE=WDMTARGETPATH=SYSINCLUDES=$(BASEDIR)\inc;SOURCES= TARGETNAME表示程序的目标名;TARGETTYPE和DRIVERTYPE表示程序是一个WDM驱动程序,TARGETPATH表示程序在SYS子目录中构造;INCLUDES表示DDK inc目录被添加到头文件的搜索列表中;SOURCES宏指定要编译
原创力文档

文档评论(0)