为什么Windows驱动程序工具包中没有WDM内核模式驱动程序模板?
-
21-12-2019 - |
题
我遇到了经验很少的内核模式驱动程序。这就是我想要做的:
- 有一个加载驱动程序的用户模式应用程序。
- 让用户模式应用程序写入它,以便向它发送指令。
- 让驱动程序将RDMSR指令发送到英特尔芯片。
- 将结果返回给用户模式应用程序。
我读过 本文 这描述了实现此行为的不同方式(缓冲I/O、直接I/O或两者都不)。
我的问题是这个。..这篇文章的代码代表了你构建一个 WDM 驱动程序,并且我期望能够使用Windows驱动程序工具包创建WDM KMDF项目模板,但是当我下载Windows驱动程序工具包(WDK)时,唯一的KMDF驱动程序模板是用于 WDF 司机。 MSDN有一篇文章描述了两者之间的差异.这对我来说有点奇怪。我期待得到一个模板开箱即用,我可以修改它,就像我链接的文章一样工作,但我没有看到它。为什么没有wdm KMDF驱动程序的模板?
只是一个附加的说明,你可以很容易地告诉基于驱动程序的类型 它创建设备的方式 (IoCreateDevice暗示WDM,而WdfDeviceCreate暗示WDF)。
解决方案
问题中有很多不一致之处。首先, KMDF
是 WDF
(这是唯一相关的 WDF
部分在谈论内核驱动程序时),所以两者之间没有矛盾。每个内核驱动程序本质上都是 WDM
司机。 KMDF
是一个框架在 WDM
和 KMDF
司机通常被称为,嗯, KMDF
司机,不提 WDM
. WDM
driver通常是指不使用任何附加框架的driver,例如 KMDF
.第二, WDK
与VS2012/2013集成,除了WDK之外,您还必须安装它才能获得模板。第三, WDM
模板确实出现在列表中。如果你没有它,我建议重新安装 WDK
和 VS
.
不隶属于 StackOverflow