HidD_GetSerialNumberString 函数 (hidsdi.h)

HidD_GetSerialNumberString例程返回顶级集合的嵌入字符串,该字符串标识集合的物理设备的序列号。

语法

BOOLEAN HidD_GetSerialNumberString(
  [in]  HANDLE HidDeviceObject,
  [out] PVOID  Buffer,
  [in]  ULONG  BufferLength
);

参数

[in] HidDeviceObject

指定顶级集合的打开句柄。

[out] Buffer

指向调用方分配的缓冲区的指针,例程使用该缓冲区返回请求的序列号字符串。 例程返回以 NULL 结尾的宽字符串。

[in] BufferLength

指定在 Buffer 中提供的调用方分配的缓冲区的长度(以字节为单位)。 如果缓冲区的大小不足以返回整个以 NULL 结尾的嵌入字符串,则例程不会在缓冲区中返回任何内容。 提供的缓冲区必须 <= 4093 字节 (2^12 – 3) 。

返回值

如果成功 返回整个以 NULL 结尾的嵌入字符串,则HidD_GetSerialNumberString返回 TRUE 。 否则,例程返回 FALSE。 使用 GetLastError 获取扩展错误信息。

注解

只有用户模式应用程序才能调用 HidD_GetSerialNumberString。 内核模式驱动程序可以使用 IOCTL_HID_GET_SERIALNUMBER_STRING

嵌入字符串中的最大可能字符数是特定于设备的。 对于 USB 设备,最大字符串长度为 126 个宽字符, (不包括终止 NULL 字符) 。

如果提供的缓冲区不 <= 4093 字节 (2^12 – 3) ,则调用可能会失败 (,具体取决于基础协议 HID/蓝牙/SPI) ,错误代码ERROR_GEN_FAILURE (0x0000001f)

有关详细信息,请参阅 HID 集合

要求

要求
最低受支持的客户端 在 Windows 2000 和更高版本的 Windows 中可用。
目标平台 通用
标头 hidsdi.h (包括 Hidsdi.h)
Library Hid.lib
DLL Hid.dll

另请参阅

HidD_GetManufacturerString

HidD_GetPhysicalDescriptor

HidD_GetProductString

IOCTL_HID_GET_INDEXED_STRING

IOCTL_HID_GET_MANUFACTURER_STRING

IOCTL_HID_GET_PRODUCT_STRING

IOCTL_HID_GET_SERIALNUMBER_STRING