用Visual Studio 2015 编译张帆的第一个NT式驱动,并且成功安装到Windows XP里面!!!
开发工具:Visual Studio 2015 企业版
目 标 机:Windows XP X86
前提:我们已经成功安装了Visual Studio 2015以及WDK,而且更重要一点是一定要SDK版本和WDK版本保证一致,如果不一致会造成Visual Studio 2015里面C/C++的宏定义和使用的WDK不匹配,严重影响驱动程序的编译!关于这个问题,可以看这篇文章:http://www.cnblogs.com/sunylat/p/6286527.html
本博客所有相关工具和源码下载:http://download.csdn.net/detail/sunylat/9740475
一,建立和编译张帆的NT式驱动:VS2015里面没有NT式驱动的工程模板,看我是如何一步步操作的!
1,新建一个WDM的空工程!!!选择好工程路径,填写工程名称为“HelloDDK”,随后点击“确定”按钮。

2,直接拷贝张帆的第一个NT式驱动源代码到我的工程里。

3,在我的工程里,把拷贝进来的头文件和源代码文件加入到工程里。

4,删除建立WDM工程时候自动生成的“HelloDDK.inf”文件。
A,

B,点击“删除”按钮才是彻底从工程里面删除掉!

5,尝试编译,但是失败了!

6,在工程上鼠标右键,点击“属性”,修改“Driver Settings”,按照截图当中那样修改,随后点击“确定”按钮。

7,继续尝试编译,又失败了,继续修改属性去。

8,在工程上鼠标右键,点击“属性”,修改“C/C++”,按照截图当中那样修改,随后点击“确定”按钮。

9,尝试编译,终于成功编译了!!!

二,在Windows XP中安装NT式驱动:先把安装和捕获驱动信息的工具放到Windows XP中,这两个工具都在本博客提供的打包文件中。
1,
A,打开“Dbgview.exe”,开始捕获驱动调试信息;
B,随后打开“KmdManager.exe”,点击菜单顶部右侧的选择驱动程序按钮,随后找到我们要安装的驱动程序,点击“打开”按钮,开始安装。

2,“KmdManager.exe”显示驱动安装成功了!“Dbgview.exe”也捕获到了驱动调试信息!
3,在我的电脑鼠标右键,点击“管理”,在设备管理器上面点击鼠标右键,随后点击“查看”,在展开的菜单中选择“显示隐藏的设备”。

4,点开“非即插即用驱动程序”,查看是否有“HelloDDK”这个驱动程序,它是我刚刚安装的驱动程序,如果没有,在“非即插即用驱动程序”上面鼠标右键,随后点击“扫描检测硬件改动”,这个时候就应有“HelloDDK”这个驱动程序了!

5,打开“HelloDDK”驱动程序,确认一下,确实是我开发和安装的张帆的第一个NT式驱动程序!!!!!

用Visual Studio 2015 编译张帆的第一个NT式驱动,并且成功安装到Windows XP里面!!!的更多相关文章
- 用Visual Studio 2015 编译张帆的第一个WDM驱动,并且成功安装到Windows 10里面!!!
开发工具:Visual Studio 2015 企业版 目 标 机:Windows 10 X86 前提:我们已经成功安装了Visual Studio 2015以及WDK,而且更重要一点是一定要SDK版 ...
- Visual Studio 2015 编译错误 File 的值+乱码的解决方法
======================================== VS2015调试项目时,会报莫名奇妙的错误,如下图所示: 程序编译,提示有错误:Visual Studio 2015 ...
- Visual Studio 2015编译安装配置QT5.5.1(含QTWEBKIT)
尽管QT5.5.1和VisualStudio 2015都已经发布很久了,但是QT项目组视乎不会为QT5.5.1专门发布预编译的QT5.5.1 for windows(2015)版本的,也不会专门发布V ...
- Visual Studio 2015编译wxWidgets
宫指导说,换帅如换刀 程序员的编译器一换,基本套路必须都重练几次 使用wxWidgets并不难,但不能使用现有的库和工程配置文件,细节就必须理清楚 获取wxWidgets 官方的下载页面,下7z或zi ...
- QT5.7.0在win10下使用visual studio 2015编译(目标平台 xp)
环境:win10+vs2015+QT5.7.0 目标:编译出能在windows xp上运行的QT 通过baidu和bing找出来的结果没有一个能成功运行,大部分都能编译成功,并完美解决“exe不是有效 ...
- Visual Studio 2015 编译错误【错误 C4996 'vsprintf': This function or variable may be unsafe. Consider using vsprintf_s instead. 】的解决方案
错误提示信息: 错误 C4996 'vsprintf': This function or variable may be unsafe. Consider using vsprintf_s inst ...
- Visual Studio 2015编译Lua 5.3.4遇到的坑
被坑的不浅,遇到错误:" LNK1561:必须定义入口点",解决方案删除再建,步骤一遍一遍操作,还是报错.如下图所示: 首先,它必须要改成DLL或者LIB(动态/静态库),如果是应 ...
- 使用 Visual Studio 2015 编译 QT 工程
简单进行一下几步就可以了 1.下载源代码 qt-everywhere-opensource-src-5.6.0-alpha.7z .解压到 D:\ToolKits\5.6.0\src 目录下2.网站 ...
- 用Visual Studio 2015成功编译、发布UMDF驱动到目标机!!
开发工具:Visual Studio 2015企业版 主 机:windows10 X64企业版,主机是安装了Visual Studio 2015的操作系统,主要进行驱动开发和调试. 目 标 ...
随机推荐
- [iOS]在xcode的iOS虚拟机中对BLE(蓝牙4.0)进行调试
本文档的主要内容可参考苹果官方资料: http://developer.apple.com/library/ios/#technotes/tn2295/_index.html 1. 买一个CSR蓝牙4 ...
- Linux实战教学笔记46:NoSQL数据库之redis持久化存储 (二)
第3章 Redis数据类型详解 3.1 Redis键/值介绍 Redis key值是二进制安全的,这意味着可以用任何二进制序列作为key值,从形如"foo"的简单字符串到一个JPG ...
- haproxy 配置 说明
一.环境说明实验环境OS CentOS5.4192.168.0.14 proxy192.168.0.24 web1192.168.0.64 web2 官方地址:http://hapr ...
- 128. Longest Consecutive Sequence (HashTable)
Given an unsorted array of integers, find the length of the longest consecutive elements sequence. F ...
- C++ 模板 与 泛型编程
C++ 模板 与 泛型编程 前言 模板有两种:类模板和函数模板 .模板是泛型编程的基础. 什么叫:泛型编程? 使用独立于特定类型的方式进行编程.也就是我们在编程的时候不明确的写上类型,而是使用一个模板 ...
- cakephp中sql查询between
$trading_list = $this->Trading->find('all', array('conditions' => array('buy_time BETWEEN ? ...
- catkin地址
Source: git https://github.com/ros/catkin.git (branch: kinetic-devel)
- 协方差与pearson相关系数
协方差 协方差大于0,表示两个随机变量正线性相关 协方差等于0,表示两随机变量无线性相关 协方差小于0,表示两随机变量负线性相关 协方差智能表示随机变量的线性相关关系,不能刻画其相关程度. 因此引入了 ...
- 1.spring.net Look-up Method 查找方法的注入(方法是抽象的需要spring.net注入)
.为什么需要查找方法的注入 当Object依赖另一个生命周期不同的Object,尤其是当singleton依赖一个non-singleton时,常会遇到不少问题,Lookup Method Injec ...
- Log4j配置(转)
原文:http://www.blogjava.net/zJun/archive/2006/06/28/55511.html Log4J的配置文件(Configuration File)就是用来设置记录 ...