2.  驱动类型

里面WDK须求和煦手动下载安装

Visual Studio +
WDK(Windows Driver Kit)

   4.  实现方式

测量试验情况

因而VS集成开荒蒙受创造 Driver
技术方案后会生成三个类型,右键属性展开 笔者需要做驱动相关的开发。XXX Package,侧面选中
Driver Signing ,在左边栏 笔者需要做驱动相关的开发。Sign Mode 选择 Test Sign,在
Test Certificate选择
<Create test certificate...>,则在编写翻译时会自动生成测量试验签字证书。

 

驱动程序不是早晚要求与硬件通信,假如急需拜见操作系统大旨数据,往往应用程序未有丰盛的权能,这种情状则需要在根本方式下进展访问。就地点5种驱动类型,小编参谋着微软的驱动例子开辟过
笔者需要做驱动相关的开发。鼠标键盘设备过滤驱动
互连网过滤软件驱动程序,所以对驱动开采的知情仍在浅水区,如在翻阅进程中窥见有误的地点,还请不吝建议。

 

小编是在Windows平台上支付,使用的支出条件为
Visual Studio 2011 + WDK 8.1

以劳动的样式运营

NT式的驱动程序允许以 service
的款型运转, 服务安装的例程能够参考 WDF Sample 中的 Eventdrv
工程,大概仿照效法笔者写的有关进度互连网监察和控制的驱动例程的开源代码

 

Github:

因专门的职业上项指标必要,笔者要求做驱动相关的开销,早前并从未接触过有关的文化,折腾意气风发段时间下来,作用如需兑现了,也积存了某个经历和意见,所以在那做番总结。

测量检验景况下安装驱动前

开垦的驱动程序未有进行具名大概选拔测试具名,则须要在设施上张开测验形式,具体操作为:张开调控台,输入:

bcdedit /set testsigning on

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

若是要关闭测验格局,则需在决定台输入:

bcdedit /set testsigning off

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

 

对此驱动开采的开销引导,微软官方文档网址已经提供了很详细的科目文书档案,并且在Github上提供了黄金年代种种标准的例程源码用于开荒人士参照他事他说加以考察。开采人士在有着一定的驱动概念知识后,通过参照他事他说加以考察官方例程能够非常轻松完毕全部一定功效的驱动应用程序。

临蓐情况

从Win10开首,驱动文件包不仅仅必要开展扩展验证
(EV)
代码签字,还亟需付出到硬件开狠人民代表大会帝导仪表盘,具体操作指南能够参照此处,你能够在该文书档案上找到驱动签字所需的任何内容。

 

行使INF文件安装

设备相关的驱动装置能够接纳INF实行设置,INF安装文件的编辑提出从
WDF Sample
中找到切合的INF文件实行改造,假让你想询问INF的语法,可以参谋这里

  • 经过设备微型机手工业安装

开垦调控台,输入 devmgmt
回车,那是开垦设备微处理器的中间大器晚成种办法,别的措施比如右键系统菜单栏图标均能够展开义务微处理器,只是选拔命令行的办法少之又少见,那Ritter别记下一下。找到感兴趣的
设备节点,右键 属性(或更新驱动程序软件卡塔 尔(英语:State of Qatar),切换成
驱动程序,能够拓宽感兴趣的操作。这里所观察所提供的选项,后续等您熟稔了驱动装置的接口后,你会意识都有相应的接口对应各类作用选项。

  • 透进度序完成自动安装

可以参谋 WDF Sample
中的Driver Install Frameworks API (DIFxAPI) Sample
Device Console (DevCon) Tool
七个工程,分别提供了不一样调用接口的驱动装置格局,Device Console (DevCon) Tool
生成的devcon.exe
是一个功效强大的工具,不止可用来驱动(包卡塔 尔(阿拉伯语:قطر‎的设置和卸载,还能获得器具的硬件ID,描述符以致配备所设置的驱动列表等音信,开荒职员能够从当中生龙活虎窥终归。

在使得的安装进程中,系统会自动记录安装的日记,在INF目录(路线通常在 C:Windowsinf下卡塔 尔(英语:State of Qatar)下得以找到三个日志文件
setupapi.app.logSetupapi.dev.log
,查看这多个日志文件有助于掌握驱动装置的试行进度,同时也会有利逐个审查驱动装置进度中冒出的丰裕。

使得的装置涉及到驱动文件的校验(有限援助驱动文件的完整性和合法性卡塔尔国,驱动的事情未发生前级总计(采用最优的驱动去相配当前识别到的新的设备卡塔尔,驱动的停放目录(Driver
Store卡塔尔国等剧情。开拓人士熟谙驱动装置逻辑有助于驱动的开销,感兴趣能够透过此处实行询问。

 

   6.  驱动签名

 

WDM vs WDF

对Yu Gang接触驱动开辟的新手来讲,笔者不提出采纳WDM(Windows
驱动程序模型卡塔尔实行开采。如今在英特网能找到的有关驱动开垦的华语图书基本上都以围绕WDM方式开展描述的,而至于WDF(Windows
驱动框架卡塔尔开辟的书籍十分少,《竹林溪径——深入浅出Window驱动开垦》和《Developing
Drivers with the Windows Driver
Foundation》算是两本叙述基于WDF开拓驱动的书籍,两个都能在网络找到E-BOOK财富。

 

 

   3.  开发环境

 驱动分为如下三种类型:

 

依据WDF的驱动开采

WDF的开销须要根据一定的平整,开荒实现时索要思谋相当多的细节,由于篇幅有限,作者凭着自个儿的阅历临时稍做列举,后续将写生龙活虎篇针对WDF驱动开垦的小说。

  • PNP和电源管理(WDF已经扶持封装了大多数的接口卡塔尔;
  • 各个对象:驱动对象,设备对象,WDF对象,文件对象,队列对象;
  • 使得上下文:不时称为设备增添,用于存款和储蓄特定设备对象的相关音讯的数据构造;
  • 指标的假释:须求思忖分歧性别质对象释放的火候;
  • 中断央浼等第:管理不当易招致蓝屏;
  • 分页与非分页内部存储器;
  • 同步锁:回调同步锁、框架等待锁、自旋锁、中断锁等;
  • 日记追踪记录:
    调节和测量检验的不可贫乏,能够采用 WPP(Windows软件追踪预微处理器卡塔 尔(阿拉伯语:قطر‎或简捷的
    DebugPrint 输出
  • 与应用程序的电视发表:调控代码、ILacrosseQ,乞求队列

 

   5.  驱动安装

 

Windows驱动程序入门:

style=”font-family: ‘Microsoft YaHei’;”>有关软件驱动程序,你的多个筛选为
KMDF 和水源格局 Windows NT 驱动程序模型。 使用 KMDF 和根本方式 Windows
NT 模型,你能够编写制定驱动程序,而无需构思即插即用 (PnP) 和电源管理。
你能够改为静心于驱动程序的首要任务上。 使用 KMDF,你不用思虑 PnP
和电源,因为框架会为您管理 PnP 和电源。 使用基本情势 Windows NT
模型,你不要思谋 PnP 和电源,因为基本形式服务在与 PnP
和电源管理完全非亲非故的蒙受中运行。

  • 配备函数驱动程序
  • 设施筛选器驱动程序
  • 软件驱动程序
  • 文件系统筛选器驱动程序
  • 文件系统驱动程序

 

   1.  前言

动用的驱动类型涉及到代码的落到实处(需没有必要思索PNP和电源管理卡塔 尔(阿拉伯语:قطر‎和驱动的安装(
NT式驱动程序以 service
的花样运转,其余驱动要求利用通用的INF文件安装卡塔尔国,微软的官方文书档案那样提到: