硬件通知支持

适用于

  • 驱动程序开发人员和 OEM

重要的 API

Windows 10 版本 1709 的基础结构可以为 LED 和振动机制等通知组件提供不区分硬件的支持。 实现此支持的方式是引入内核模式驱动程序框架 (KMDF) 类扩展,该扩展专用于硬件通知组件,因此可以快速开发客户端驱动程序。 KMDF 类扩展实质上是 KMDF 驱动程序,它为给定的设备类提供一组定义的功能,类似于 Windows 驱动程序模型 (WDM) 中的端口驱动程序。 此部分概述硬件通知类扩展的体系结构。 有关 KMDF 的其他信息,请参阅 Using WDF to Develop a Driver(使用 WDF 来开发驱动程序)。

硬件通知类扩展

硬件通知类扩展是硬件通知驱动程序体系结构的核心组件。 类扩展旨在最大程度地减少与 KMDF 的必要交互,并改为提供用于控制通知组件的简单接口。 类扩展处理如下任务:

  • 注册客户端驱动程序
  • 系统资源的分配和清理
  • 注册客户端驱动程序的 PnP 电源回调函数
  • 注册客户端驱动程序的 I/O 队列
  • 数据验证和错误检查
  • 将硬件请求与客户端驱动程序通信

下图演示了基本的硬件通知类扩展体系结构。

hwn clx 体系结构。

硬件通知客户端驱动程序

可以使用硬件通知类扩展轻松为硬件通知组件生成客户端驱动程序。 客户端驱动程序的唯一责任是为 KMDF 提供适当的入口点、实现定义的类扩展回调函数、管理电源状态以及控制物理硬件。 具体而言,客户端驱动程序必须实现 DriverEntryEVT_WDF_DRIVER_DEVICE_ADD 回调函数,供 Windows Driver Foundation (WDF) 使用,以及类扩展所需的回调函数。

下图从客户端驱动程序的角度阐释了交互。

客户端驱动程序拱门。