Windows驱动开发遇到的问题(二)
来源:互联网 发布:淘宝秒杀信息 编辑:程序博客网 时间:2024/05/22 14:11
今天工作遇到的问题:
1.我是从WDF框架开始学习驱动,编译环境也是VS2012+WDK8的组合,驱动工程完成以后,生成的驱动文件只有VISTA,WIN7和WIN8的版本,虽然说微软已经停止了XP系统的维护,但是还是有大量的用户在使用XP系统,所以还要继续开发XP系统的驱动文件。我原来的方法是采用重新安装WDK7,然后再编译出XP系统驱动文件的方法,这个方法实在是太过麻烦,今天发现了张佩发表的一篇文章《VS2012开发驱动小Tip之:更改KMDF版本,可支持XP》。原文地址为:http://www.yiiyee.cn/Blog/vs2012-1/。
早期的KMDF版本保持了良好的向后兼容性,比如用最晚KMDF 1.9编译出来的驱动程序,可安装使用于XP系统。但从下图(MSDN)可以看出,从KMDF 1.11开始,情况变化了。KMDF 1.11取消了对Vista以前系统的支持。而KMDF 1.13更绝,编译出来的驱动只能安装在Win8.1上。所以只要选择KMDF1.9编译出来的驱动就可以应用在XP系统上。
解决办法如下图:
它默认使用的是主版本1,次版本11。只要把次版本改成9,保存后重新编译,编译出来的驱动程序就是KMDF 1.9版本,从而可以安装运行于XP系统上了。
2.在编译出XP驱动后,我发现有些系统可以正确安装我生成的驱动,有些XP系统就会在加载驱动时出现代码39的错误,网上有很多文章在说是WdfCoInstaller名称的dll文件不正确,结果就是可以使用对应WDK版本的dll文件来安装驱动即可。比如我个人安装的WDK版本为7600.16385.1,可以在dll文件下载,下载到适合改版本WDK的dll文件,然后在inf文件中包括,安装驱动即可成功。
每天都要有进步!
- Windows驱动开发遇到的问题(二)
- Windows驱动开发遇到的问题(一)
- Windows驱动开发入门遇到的问题和困难
- Windows驱动开发(二)
- 驱动开发面试会遇到的问题
- Linux驱动开发--Linux驱动开发遇到的问题
- android roboguice 开发遇到的问题(二)
- android蓝牙开发过程中遇到的问题(二)
- android app开发遇到的一些问题(二)
- Android移动开发--遇到的问题及解决(二)
- 开发过程遇到的一些问题(二)
- Windows驱动wdf驱动开发系列(二)
- Windows 驱动开发笔记(二)
- linux ---------驱动开发遇到的问题及解决方法
- Windows 8.1 & Windows Phone 开发环境安装遇到的问题
- windows 驱动开发(二) DDK与WDK WDM的区别
- Windows驱动开发(11) - 驱动程序的同步处理(二)
- 《Windows驱动开发技术详解》读书笔记(二)
- happens-before俗解
- SVN版本管理配置
- 浅析PHP运行机制
- 各种浏览器渊源分析,360, 搜狗,Chrome, Firefox。。
- iOS runtime详解1
- Windows驱动开发遇到的问题(二)
- jq的50种常用方法(转)
- 4---3程序的多文件组织
- openwrt
- 而通过合法和现场
- 简明HTTP协议
- java 中 堆(Heap) 和 栈(stack) 的区别
- Json字符串和Json对象的转换和问题总结
- Ant自动打包(可动态修改包名、资源等)生成不同签名不同包名的APP