驱动程序的注册表项简介

驱动程序通常使用一组系统定义的注册表项来存储或访问特定于驱动程序或特定于设备的信息。 驱动程序可能会访问以下注册表项:

  • 参数

    驱动程序 的参数密钥 可以包含驱动程序的配置信息,可以通过调用 WdfDriverOpenParametersRegistryKey 进行访问。 对于 Kernel-Mode Driver Framework (KMDF) 驱动程序,此密钥位于驱动程序的相应 服务 树中。 对于 User-Mode Driver Framework (UMDF) 驱动程序,此键位于 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WUDF\Services 树的驱动程序服务名称下。 驱动程序的子项始终使用驱动程序的服务名称,即使驱动程序二进制文件的文件名与服务名称不同。

    注意

    UMDF 不支持创建子项。

    当系统调用驱动程序的 DriverEntry 例程时,它会在相应的 服务 树中向驱动程序的密钥传递路径。 驱动程序必须将此路径传递给 WdfDriverCreate。 随后,驱动程序可以通过调用 WdfDriverGetRegistryPath 来获取路径。

  • 软件密钥

    驱动程序的软件密钥也称为其 驱动程序密钥。 系统在其软件密钥下存储有关每个驱动程序的信息。

    驱动程序可以调用 WdfFdoInitOpenRegistryKeyWdfDeviceOpenRegistryKey 来打开设备的软件密钥。

    驱动程序的 INF 文件可以包含 INF AddReg 指令 ,这些指令使用 INF DDInstall 节在软件键下设置注册表值。

  • 硬件密钥

    当驱动程序堆栈通知即插即用 (PnP) 管理器设备已连接到系统时,PnP 管理器会为设备创建硬件密钥。 此密钥也称为 设备密钥。 驱动程序可以在此处存储与硬件 (相关的设置,例如中断设置) 。

    驱动程序可以调用 WdfFdoInitOpenRegistryKeyWdfDeviceOpenRegistryKey 来打开设备的硬件密钥。

    驱动程序的 INF 文件可以包含 INF AddReg 指令 ,这些指令使用 INF DDInstall.HW 部分在硬件键下设置注册表值。

若要确定驱动程序类型是否要求将信息存储在特定的注册表项下,请参阅本文档中使用目录讨论驱动程序的设备类型的部分。

有关驱动程序的注册表项的详细信息,请参阅: