如何使用设备组为设备指定图标、标签或设备处理程序

设备组允许声明自己属于该组的任何设备的图标、标签或 DeviceHandlers 属性的规范。 如果设备组不是系统提供的设备组,则会在 AutoplayHandlers DeviceGroups\ 密钥下添加定义设备组的密钥。 无需为每个组设置所有三个属性;只能设置要自定义的属性。 但是,设备和设备处理程序应始终具有关联的图标和标签,以满足最低可用性要求。

Instructions

以下示例使用具有多个附加 Zip 驱动器的系统。 如果不单独为每个驱动器指定图标、标签和 DeviceHandlers 值,可以创建名为 ZipDrive 的设备组并在其中定义这些值。 然后,将每个 Zip 驱动器声明为 ZipDrive 组的成员。

首先,通过添加以下 ZipDrive 密钥及其值来定义设备组。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         Windows
            CurrentVersion
               Explorer
                  AutoplayHandlers
                     DeviceGroups
                        ZipDrive
                           Icons [REG_MULTI_SZ] = %SystemRoot%\system32\mydll.dll,-103
                           NoMediaIcons [REG_MULTI_SZ] = %SystemRoot%\system32\mydll.dll,-104
                           Label [REG_SZ] = My Custom Device Label
                           DeviceHandlers [REG_SZ] = MyDeviceHandler

然后,将每个 Zip 驱动器设备声明为 ZipDrive 组的一部分,继承该组的属性。 在设备实例的 DeviceParameters 键下,添加名为 DeviceGroup 的值作为 类型REG_SZ。 此值的数据条目是设备组的名称。

HKEY_LOCAL_MACHINE
   SYSTEM
      CurrentControlSet
         Enum
            USB
               Vid_059b&Pid_0031
                  059B003112010E93
                     Device Parameters
                        DeviceGroup [REG_SZ] = ZipDrive

还可以在设备组的键下添加图标、标签和 DeviceHandlers 以外的自定义设备属性,然后将其应用于属于该设备组的所有设备。

注意

在设备实例级别定义的属性优先于在设备组级别定义的属性,后者又优先于在设备类级别定义的属性。