《Windows设备驱动程序WDF》书籍附带源码运行小记

这几天下决心学习一下Windows下的驱动程序开发。

首先找到一本书的电子版,是武安河的《Windows设备驱动程序WDF》。下载了书籍附带的源代码,准备练习运行。书上没有介绍具体的开发环境和运行环境,所以我在Windows 7 64位版上安装了 Windows WDK 7.1(7600)。

运行过程中我使用Windows7 check build x64生成环境。首先实验 CharSample例子。书上没有介绍如何安装驱动,曾经尝试直接使用设备管理器安装,但是提示没有找到驱动。找了多份资料,终于提到需要拷贝开发环境中的WdfCoInstaller{xxxxx}.dll到所生成的驱动程序所在文件夹,并使用devcon命令进行安装。

但是,安装过程仍然失败。历经多次实验之后,终于确定问题在安装的 inf文件上。首先,书上附带的inf文件中是 WdfCoInstaller01007.dll,但是我的开发环境中对应的文件是WdfCoInstaller01009.dll。第二,书上附带的inf文件中的系统架构是NTx86,是32位版本。但是我的运行环境的是 64位版本,需要使用NTAMD64。对inf文件做了两处替换之后,驱动程序终于运行成功了。

另外有些小细节也要注意:Windows7默认情况需要对驱动程序进行签名。正常情况下没有签名的驱动程序是不能安装的。可以在启动时按F8进入启动菜单,选择“高级启动选项”中的“禁用驱动程序签名强制”选项。

一般情况下,可以在禁用强制驱动程序签名后,生成对应架构的驱动程序。然后将WdfCoInstaller{xxxxx}.dll文件拷贝到驱动程序所在文件夹,然后使用devcon命令安装驱动程序。实际上也可以直接利用系统的设备管理器安装驱动。安装成功后,可以在设备管理器中查看到所安装的设备。然后,可以利用对应的应用程序进行测试。

特地记录,供后来学习者参考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值