文本主要介绍 Win10 系统下安装 VS2015 及 WDK10 驱动开发环境的搭建,搭建完成后可通过 VS2015 直接新建驱动项目并编译通过后可在 Win7 以上系统运行。无需自己制作模版等繁琐步骤(其实早在 VS2013+WDK8.1 的时候就已经支持直接从 IDE 中新建项目)。以下是相关截图:

可直接通过 VS 创建项目 2016-08-06_124501 直接在 VS 中编译: 2016-08-06_124622

安装步骤

打开 https://developer.microsoft.com/zh-cn/windows/hardware/windows-driver-kit 页面,下载 VS2015 和 WDK10。 2016-08-06_125011 2016-08-06_125353 根据你的需要下载对应版本的 VS2015,推荐下载 Community 版本,因为这个版本免费且功能齐全。安装包比较大,大概 7G 左右。下载完成后运行安装程序,选择 Visual C++Windows 10 SDK 2016-08-06_125128 2016-08-06_125154 VS2015 安装完成后,开始安装下载好的 WDK10,WDK10 是一个在线安装程序,可以直接安装也可以下载到本地再进行安装,我选择的是直接下载到本地: 2016-08-06_125711 等待下载完成后,到下载后的目录直接运行安装程序安装即可。

开发设置

VS2015 和 WDK 都安装完毕后,运行 VS2015,新建项目时就可以看到有 Windows Driver 的选项了,我们新建一个 WDK 的 Kernel Mode Driver 的空项目,然后新建一个 DriverEntry.c,里面写一些测试代码: 2016-08-06_130027 2016-08-06_131650 然后点击项目属性,修改如下几个选项: 修改警告等级为 3: 2016-08-06_130436 修改平台为 Windows7 Desktop: 2016-08-06_130512 关闭 inf2cat(详见 http://blog.csdn.net/doublestarts/article/details/37922819): 2016-08-06_130547 关闭为驱动添加数字签名 2016-08-06_130612 然后编译驱动,我选择的是 x64 平台,如无问题,则会编译成功:

1
2
3
4
5
6
7
8
1>------ 已启动生成: 项目: TestDriver, 配置: Debug x64 ------
1> Building 'TestDriver' with toolset 'WindowsKernelModeDriver10.0' and the 'Desktop' target platform.
1> Stamping x64\Debug\TestDriver.inf [Version] section with DriverVer=08/06/2016,13.10.36.807
1> DriverEntry.c
1> TestDriver.vcxproj -> d:\documents\visual studio 2015\Projects\TestDriver\x64\Debug\TestDriver.sys
1> TestDriver.vcxproj -> d:\documents\visual studio 2015\Projects\TestDriver\x64\Debug\TestDriver.pdb (Full PDB)
========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ==========

测试驱动

找一台 Win7x64 开启了 DbgView 调试信息输出(见:修改注册表解决 Win7 DbgView 不显示调试信息)的虚拟机,开机按 F8,选择“禁用驱动程序签名强制”的选项启动系统: 2016-08-06_131237 打开 DbgView 和驱动加载工具 InstDrv,将我们写好的驱动复制到虚拟机中,加载我们的驱动,成功后会打印驱动的注册表路径信息: 2016-08-06_131805