- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
SetupDiSetDeviceRegistryProperty 的文档功能说,
The following values are reserved for use by the operating system and cannot be used in the Property parameter ... SPDRP_HARDWAREID
但是,有很多代码示例,包括 MS DevCon将此函数与 SPDRP_HARDWAREID 参数一起使用的实用程序,即:
SetupDiSetDeviceRegistryProperty(DeviceInfoSet, &DeviceInfoData, SPDRP_HARDWAREID, (LPBYTE)hwIdList, (lstrlen(hwIdList)+1+1)*sizeof(TCHAR)))
他们还有一个 article这建议这样做:
If an installer detects a non-PnP device, the installer should select a driver for the device as follows: create a device information element (SetupDiCreateDeviceInfo), set the SPDRP_HARDWAREID property by calling SetupDiSetDeviceRegistryProperty
我想(并且确实)使用此功能为我的虚拟设备设置硬件 ID。问题是 - 它是手册中的拼写错误,还是某种不受支持的行为,因此它可以随时停止工作?
最佳答案
TL;DR:如果您正在创建一个root-enumerated device节点,您可以自行设置SPDRP_HARDWAREID
/SPDRP_COMPATIBLEIDS
通过调用 SetupDiSetDeviceRegistryProperty
。否则不允许您这样做。
这是文档中的错误,已在某个时候修复。
今天 SetupDiSetDeviceRegistryProperty
的文档阅读:
SPDRP_HARDWAREID or SPDRP_COMPATIBLEIDS can only be used when DeviceInfoData represents a root-enumerated device. For other devices, the bus driver reports hardware and compatible IDs when enumerating a child device after receiving IRP_MN_QUERY_ID. [Emphasis mine]
...这正是 DevCon 所做的。
关于windows - 将 SetupDiSetDeviceRegistryProperty 与 SPDRP_HARDWAREID 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28661017/
SetupDiSetDeviceRegistryProperty 的文档功能说, The following values are reserved for use by the operating
我是一名优秀的程序员,十分优秀!