SetupDiGetDeviceInstanceIdA 函数 (setupapi.h)

SetupDiGetDeviceInstanceId 函数检索与设备信息元素关联的设备实例 ID

注意

在 Windows Vista 及更高版本的 Windows 中, 统一设备属性模型 使用 DEVPKEY_Device_InstanceId属性键 来表示设备实例标识符。 有关详细信息 ,请参阅检索设备实例标识符

语法

WINSETUPAPI BOOL SetupDiGetDeviceInstanceIdA(
  [in]            HDEVINFO         DeviceInfoSet,
  [in]            PSP_DEVINFO_DATA DeviceInfoData,
  [out, optional] PSTR             DeviceInstanceId,
  [in]            DWORD            DeviceInstanceIdSize,
  [out, optional] PDWORD           RequiredSize
);

参数

[in] DeviceInfoSet

设备信息集的句柄,其中包含表示要为其检索设备实例 ID 的设备的设备信息元素。

[in] DeviceInfoData

指向 SP_DEVINFO_DATA 结构的指针,该结构指定 DeviceInfoSet 中的设备信息元素。

[out, optional] DeviceInstanceId

指向字符缓冲区的指针,该缓冲区将接收指定设备信息元素的以 NULL 结尾的设备实例 ID。 有关设备实例 ID 的信息,请参阅 设备标识字符串

[in] DeviceInstanceIdSize

DeviceInstanceId 缓冲区的大小(以字符为单位)。

[out, optional] RequiredSize

指向变量的指针,该变量接收存储设备实例 ID 所需的字符数。

返回值

如果成功,函数将返回 TRUE 。 否则,它将返回 FALSE ,并且可以通过调用 GetLastError 来检索记录的错误。

注解

注意

setupapi.h 标头将 SetupDiGetDeviceInstanceId 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 在 Microsoft Windows 2000 及更高版本的 Windows 中可用。
目标平台 桌面
标头 setupapi.h (包括 Setupapi.h)
Library Setupapi.lib

另请参阅

SP_DEVINFO_DATA

SetupDiCreateDevRegKey

SetupDiCreateDeviceInfo

SetupDiOpenDevRegKey

SetupDiOpenDeviceInfo