菜单

系统:Windows驱动开拓入门指导

2019年11月8日 - 皇家赌场系统

   1.  前言

因专门的工作上项指标内需,作者须求做驱动相关的支付,早前并不曾接触过有关的文化,折腾风度翩翩段时间下来,功效如需兑现了,也储存了有个别经历和观点,所以在那做番总计。

对此驱动开拓的开销指点,微软官方文书档案网址已经提供了很详细的科目文书档案,并且在Github上提供了风华正茂比比皆已经典型的例程源码用于开采人士参照他事他说加以考察。开垦人士在富有一定的驱动概念知识后,通过仿效官方例程能够比较轻巧完结全数一定成效的驱动应用程序。

Windows驱动程序入门:

Github:

 

   2.  驱动类型

 驱动分为如下几种类型:

驱动程序不是顺其自然须要与硬件通信,尽管须求拜候操作系统宗旨数据,往往应用程序未有丰富的权柄,这种状态则需求在幼功情势下举行寻访。就地方5种驱动类型,小编参考着微软的驱动例子开垦过
鼠标键盘设备过滤驱动
互连网过滤软件驱动程序,所以对驱动开采的明亮仍在浅水区,如在读书进程中开采存误的地方,还请不吝提议。

接纳的驱动类型涉及到代码的完结(需没有必要思虑PNP和电源管理)和驱动的设置(
NT式驱动程序以 service
的花样运转,其余驱动需求使用通用的INF文件安装卡塔尔国,微软的法定文书档案那样提到:

style=”font-family: ‘Microsoft YaHei’;”>有关软件驱动程序,你的五个筛选为
KMDF 和根本格局 Windows NT 驱动程序模型。 使用 KMDF 和基本形式 Windows
NT 模型,你能够编写驱动程序,而不须求思量即插即用 (PnP) 和电源管理。
你能够改为潜心于驱动程序的重要职责上。 使用 KMDF,你不要思虑 PnP
和电源,因为框架会为你管理 PnP 和电源。 使用基本功格局 Windows NT
模型,你不用思量 PnP 和电源,因为基本形式服务在与 PnP
和电源管理完全非亲非故的情状中运营。

   3.  开发环境

 

Visual Studio +
WDK(Windows Driver Kit)

里头WDK供给团结手动下载安装

作者是在Windows平台上开垦,使用的支付意况为
Visual Studio 2011 + WDK 8.1

 

   4.  实现方式

 

WDM vs WDF

对此刚接触驱动开垦的生手来讲,我不提议选择WDM(Windows
驱动程序模型卡塔尔国实行开拓。近日在英特网能找到的关于驱动开发的华语图书基本上都是围绕WDM情势开展描述的,而有关WDF(Windows
驱动框架卡塔尔开荒的图书相当少,《竹林溪径——深入显出Window驱动开采》和《Developing
Drivers with the Windows Driver
Foundation》算是两本陈诉基于WDF开辟驱动的图书,两个都能在互连网找到E-BOOK资源。

 

依据WDF的驱动开辟

WDF的支出必要遵照一定的平整,开拓完毕时需求思忖超多的内幕,由于篇幅有限,小编凭着本身的经历权且稍做列举,后续将写意气风发篇针对WDF驱动开辟的小说。

 

   5.  驱动安装

 

测量检验遭受下安装驱动前

付出的驱动程序未有展开签订合同大概选拔测量检验签字,则必要在设备上展开测验方式,具体操作为:张开控制台,输入:

bcdedit /set testsigning on

回车,会提示:操作成功完成。
然后重启设备,开机后会在Computer桌面右下方展现有“测试情势”字样内容的水印。

万豆蔻梢头要关闭测量检验方式,则需在决定台输入:

bcdedit /set testsigning off

回车,相符会提示:操作成功完成。
重启设备后则会发觉桌面右下角的水印消失。

 

以劳动的款型运维

NT式的驱动程序允许以 service
的款式运营, 服务安装的例程能够仿效 WDF Sample 中的 Eventdrv
工程,也许参谋作者写的关于进度网络监督的驱动例程的开源代码

 

动用INF文件安装

设备相关的驱动装置能够选取INF进行安装,INF安装文件的编辑提出从
WDF Sample
中找到符合的INF文件进行修正,假让你想询问INF的语法,能够参照他事他说加以考察这里

开垦调控台,输入 devmgmt
回车,那是展开设备微处理器的中间豆蔻梢头种办法,其余措施比如右键系统菜单栏Logo均能够张开任务微型机,只是选取命令行的办法相当少见,那Ritter别记下一下。找到感兴趣的
设备节点,右键 属性(或更新驱动程序软件卡塔尔,切换来
驱动程序,能够举行感兴趣的操作。这里所见到所提供的选项,后续等你熟稔了驱动装置的接口后,你会发觉都有照顾的接口对应每种功效选项。

能够参谋 WDF Sample
中的Driver Install Frameworks API (DIFxAPI) Sample
Device Console (DevCon) Tool
五个工程,分别提供了差别调用接口的驱动装置方式,Device Console (DevCon) Tool系统
生成的devcon.exe
是八个成效强盛的工具,不仅仅可用以驱动(包卡塔 尔(英语:State of Qatar)的安装和卸载,还能够博得器具的硬件ID,描述符以致配备所设置的驱动列表等新闻,开荒职员能够从当中意气风发窥毕竟。

在驱动的装置进程中,系统会自动记录安装的日志,在INF目录(路线平时在 C:\Windows\inf下卡塔尔下得以找到五个日志文件
setupapi.app.logSetupapi.dev.log
,查看那多个日志文件有助于精晓驱动装置的试行进程,同一时候也便于逐个检查核对驱动装置进度中现身的百般。

使得的设置涉及到驱动文件的校验(保障驱动文件的完整性和合法性卡塔 尔(英语:State of Qatar),驱动的预先级总结(接纳最优的驱动去匹配当前识别到的新的装置卡塔尔,驱动的放置目录(Driver
Store卡塔尔等内容。开辟人士了然驱动装置逻辑有帮忙驱动的支付,感兴趣能够经过此处进展询问。

 

   6.  驱动签名

 

测量试验景况

经过VS集成开采碰到创立 Driver
技术方案后会生成三个项目,右键属性展开 XXX Package,左侧选中
Driver Signing ,在侧面栏 Sign Mode 选择 Test Sign,在
Test Certificate选择
<Create test certificate...>,则在编写翻译时会自动生成测量试验签名证书。

 

分娩条件

从Win10起来,驱动文件包不唯有须要进行扩充验证
(EV)
代码具名,还索要交给到硬件开垦基本仪表盘,具体操作指南能够参见此处,你能够在该文书档案上找到驱动具名所需的其余内容。

 

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图