Win7 环境下如何配置驱动开发环境
2014-06-19 20:38
495 查看
一、下载和安装WDK
微软向第三方开发者提供了驱动的程序的开发接口,开发者可以通过安装WDK来获得这些接口。Windows Driver Kit Version 7.1.0 可以从微软的官方网站上免费的下载,下载的网址是点击打开链接
WDK的安装过程比较简单,按照默认的安装选项安装即可到合适的目录下即可,默认的情况下会安装到C盘下,你也可以指定到其它的盘下面。WDK安装成功后会在安装盘下生成一个WinDDK的目录。在开始菜单栏中有一个Windows Driver Kits一项,下面有针对不同的windows版本的编译工具和帮助文档。这些编译工具用来编译驱动程序,而帮助文档是我们学习驱动开发非常好的学习资料。
这是开始菜单中的WDK的启动项
这是WDK的帮助文档的界面
二、配置驱动程序代码的编辑环境
编写驱动程序需要用到许多内核模式的函数和数据结构,开发者不可能记住所有这个复杂的数据结构和函数,也不可能用记事本来编写驱动程序.下面就讲一下如何利用VS2010集成开发环境 来编辑驱动程序代码。
1. 首先,你的机器上必须安装VS2010,各种版本都可以。
2. 安装一个VS的插件Visual Assist X,这的小插件是要收费的,可以在网上下载到破解版本,这是个非常好用的插件,有了它能够极大的提高编写代码的效率
3. 准备工作做好的,我们就开始写驱动程序的源代码了,
4. 首先新建一个空工程,这儿我们取名为DriverTest
5. 如下导入几个库
我的WDK安装在E盘,这个目录要根据你WDK的安装目录而定
设置好了,就可以敲代码了
键入上面的代码,注意到了没,代码的颜色是不是很漂亮,这就是插件的作用,这个插件还有根据所包含的库文件自动补全代码的功能,总之很强大。
保存之后,可以退出VS了,代码已经编写完成。
三、编译驱动程序
编译驱动之前需要写两个文件一个makefile文件,一个是source文件。编译程序会根据这两个文件将源代码编译成以sys结尾的驱动程序。
Makefile文件的内容如下:
!INCLUDE $(NTMAKEENV)\makefile.def
Source文件的内容如下:
TARGETNAME=DriverTest
TARGETTYPE=DRIVER
TARGETPATH=OBJ
SOURCES=test.c
这些字段的含义可参考张帆的《驱动开发技术详解》一书。
打开编译程序,是个命令行模式的程序,使用cd命令切换到当前目录下,键入BLD或build即可成功的编译驱动程序。
编译好的驱动在objchk_wxp_x86->i386下
四、测试驱动
这个驱动程序是一个测试程序,只是在驱动加载时打印一个DriverEntry,在驱动卸载时打印一个Unload Driver。
我们一般在虚拟机中测试驱动,将这个驱动程序拷贝进虚拟机,用InstDrv.exe程序安装,启动,停止和卸载。用DebugView来查看驱动输出的信息。
4000
微软向第三方开发者提供了驱动的程序的开发接口,开发者可以通过安装WDK来获得这些接口。Windows Driver Kit Version 7.1.0 可以从微软的官方网站上免费的下载,下载的网址是点击打开链接
WDK的安装过程比较简单,按照默认的安装选项安装即可到合适的目录下即可,默认的情况下会安装到C盘下,你也可以指定到其它的盘下面。WDK安装成功后会在安装盘下生成一个WinDDK的目录。在开始菜单栏中有一个Windows Driver Kits一项,下面有针对不同的windows版本的编译工具和帮助文档。这些编译工具用来编译驱动程序,而帮助文档是我们学习驱动开发非常好的学习资料。
这是开始菜单中的WDK的启动项
这是WDK的帮助文档的界面
二、配置驱动程序代码的编辑环境
编写驱动程序需要用到许多内核模式的函数和数据结构,开发者不可能记住所有这个复杂的数据结构和函数,也不可能用记事本来编写驱动程序.下面就讲一下如何利用VS2010集成开发环境 来编辑驱动程序代码。
1. 首先,你的机器上必须安装VS2010,各种版本都可以。
2. 安装一个VS的插件Visual Assist X,这的小插件是要收费的,可以在网上下载到破解版本,这是个非常好用的插件,有了它能够极大的提高编写代码的效率
3. 准备工作做好的,我们就开始写驱动程序的源代码了,
4. 首先新建一个空工程,这儿我们取名为DriverTest
5. 如下导入几个库
我的WDK安装在E盘,这个目录要根据你WDK的安装目录而定
设置好了,就可以敲代码了
#include<NTddk.h> VOID DriverUnload(); NTSTATUS DriverEntry(PDRIVER_OBJECT pDriver, PUNICODE_STRING pRegPath) { KdPrint(("DriverEntry")); pDriver->DriverUnload = (PDRIVER_UNLOAD)DriverUnload; return STATUS_SUCCESS; } VOID DriverUnload(PDRIVER_OBJECT driver) { KdPrint(("Unload Driver")); }
键入上面的代码,注意到了没,代码的颜色是不是很漂亮,这就是插件的作用,这个插件还有根据所包含的库文件自动补全代码的功能,总之很强大。
保存之后,可以退出VS了,代码已经编写完成。
三、编译驱动程序
编译驱动之前需要写两个文件一个makefile文件,一个是source文件。编译程序会根据这两个文件将源代码编译成以sys结尾的驱动程序。
Makefile文件的内容如下:
!INCLUDE $(NTMAKEENV)\makefile.def
Source文件的内容如下:
TARGETNAME=DriverTest
TARGETTYPE=DRIVER
TARGETPATH=OBJ
SOURCES=test.c
这些字段的含义可参考张帆的《驱动开发技术详解》一书。
打开编译程序,是个命令行模式的程序,使用cd命令切换到当前目录下,键入BLD或build即可成功的编译驱动程序。
编译好的驱动在objchk_wxp_x86->i386下
四、测试驱动
这个驱动程序是一个测试程序,只是在驱动加载时打印一个DriverEntry,在驱动卸载时打印一个Unload Driver。
我们一般在虚拟机中测试驱动,将这个驱动程序拷贝进虚拟机,用InstDrv.exe程序安装,启动,停止和卸载。用DebugView来查看驱动输出的信息。
4000
相关文章推荐
- Win7 下如何配置android开发环境
- Win7配置驱动开发环境(wdk7.60)
- 如何为 WDK7600+VC++6.0配置驱动开发环境
- VS2008+WDK+Win7 32位 驱动开发环境配置中遇到的问题
- Win7配置驱动开发环境(wdk7.60)
- Linux下如何配置OpenGL开发环境
- Visual Studio 2008配置DDK驱动开发环境
- vs2005与wdk 驱动开发环境配置
- 如何在Linux下配置Java开发环境详述
- 驱动开发环境配置
- 如何在Visual Studio 2005下配置WinPcap开发环境
- 如何配置JXTA开发环境
- 如何配置J2ME的eclipse的开发环境~
- 如何在window下配置Qt以及IDE开发环境
- 如何配置PHP的开发和调试环境
- 驱动开发环境VS2005+DDK2003+DriverStudio3.2配置
- 如何配置驱动程序开发环境
- 如何配置XNA开发环境
- 如何在Visual Studio 2005下配置WinPcap开发环境
- 如何在 vista 的 iis 7 上面配置 asp.net 1.1 开发环境