开发工具: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里面!!!的更多相关文章

  1. 用Visual Studio 2015 编译张帆的第一个WDM驱动,并且成功安装到Windows 10里面!!!

    开发工具:Visual Studio 2015 企业版 目 标 机:Windows 10 X86 前提:我们已经成功安装了Visual Studio 2015以及WDK,而且更重要一点是一定要SDK版 ...

  2. Visual Studio 2015 编译错误 File 的值+乱码的解决方法

    ======================================== VS2015调试项目时,会报莫名奇妙的错误,如下图所示: 程序编译,提示有错误:Visual Studio 2015 ...

  3. Visual Studio 2015编译安装配置QT5.5.1(含QTWEBKIT)

    尽管QT5.5.1和VisualStudio 2015都已经发布很久了,但是QT项目组视乎不会为QT5.5.1专门发布预编译的QT5.5.1 for windows(2015)版本的,也不会专门发布V ...

  4. Visual Studio 2015编译wxWidgets

    宫指导说,换帅如换刀 程序员的编译器一换,基本套路必须都重练几次 使用wxWidgets并不难,但不能使用现有的库和工程配置文件,细节就必须理清楚 获取wxWidgets 官方的下载页面,下7z或zi ...

  5. QT5.7.0在win10下使用visual studio 2015编译(目标平台 xp)

    环境:win10+vs2015+QT5.7.0 目标:编译出能在windows xp上运行的QT 通过baidu和bing找出来的结果没有一个能成功运行,大部分都能编译成功,并完美解决“exe不是有效 ...

  6. 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 ...

  7. Visual Studio 2015编译Lua 5.3.4遇到的坑

    被坑的不浅,遇到错误:" LNK1561:必须定义入口点",解决方案删除再建,步骤一遍一遍操作,还是报错.如下图所示: 首先,它必须要改成DLL或者LIB(动态/静态库),如果是应 ...

  8. 使用 Visual Studio 2015 编译 QT 工程

    简单进行一下几步就可以了 1.下载源代码 qt-everywhere-opensource-src-5.6.0-alpha.7z .解压到 D:\ToolKits\5.6.0\src 目录下2.网站 ...

  9. 用Visual Studio 2015成功编译、发布UMDF驱动到目标机!!

    开发工具:Visual Studio 2015企业版 主      机:windows10 X64企业版,主机是安装了Visual Studio 2015的操作系统,主要进行驱动开发和调试. 目  标 ...

随机推荐

  1. [iOS]在xcode的iOS虚拟机中对BLE(蓝牙4.0)进行调试

    本文档的主要内容可参考苹果官方资料: http://developer.apple.com/library/ios/#technotes/tn2295/_index.html 1. 买一个CSR蓝牙4 ...

  2. Linux实战教学笔记46:NoSQL数据库之redis持久化存储 (二)

    第3章 Redis数据类型详解 3.1 Redis键/值介绍 Redis key值是二进制安全的,这意味着可以用任何二进制序列作为key值,从形如"foo"的简单字符串到一个JPG ...

  3. haproxy 配置 说明

    一.环境说明实验环境OS CentOS5.4192.168.0.14    proxy192.168.0.24    web1192.168.0.64    web2 官方地址:http://hapr ...

  4. 128. Longest Consecutive Sequence (HashTable)

    Given an unsorted array of integers, find the length of the longest consecutive elements sequence. F ...

  5. C++ 模板 与 泛型编程

    C++ 模板 与 泛型编程 前言 模板有两种:类模板和函数模板 .模板是泛型编程的基础. 什么叫:泛型编程? 使用独立于特定类型的方式进行编程.也就是我们在编程的时候不明确的写上类型,而是使用一个模板 ...

  6. cakephp中sql查询between

    $trading_list = $this->Trading->find('all', array('conditions' => array('buy_time BETWEEN ? ...

  7. catkin地址

    Source: git https://github.com/ros/catkin.git (branch: kinetic-devel)

  8. 协方差与pearson相关系数

    协方差 协方差大于0,表示两个随机变量正线性相关 协方差等于0,表示两随机变量无线性相关 协方差小于0,表示两随机变量负线性相关 协方差智能表示随机变量的线性相关关系,不能刻画其相关程度. 因此引入了 ...

  9. 1.spring.net Look-up Method 查找方法的注入(方法是抽象的需要spring.net注入)

    .为什么需要查找方法的注入 当Object依赖另一个生命周期不同的Object,尤其是当singleton依赖一个non-singleton时,常会遇到不少问题,Lookup Method Injec ...

  10. Log4j配置(转)

    原文:http://www.blogjava.net/zJun/archive/2006/06/28/55511.html Log4J的配置文件(Configuration File)就是用来设置记录 ...