Export (0) Print
Expand All

HidD_GetIndexedString routine

The HidD_GetIndexedString routine returns a specified embedded string from a top-level collection.

Syntax


BOOLEAN __stdcall HidD_GetIndexedString(
  _In_   HANDLE HidDeviceObject,
  _In_   ULONG StringIndex,
  _Out_  PVOID Buffer,
  _In_   ULONG BufferLength
);

Parameters

HidDeviceObject [in]

Specifies an open handle to a top-level collection.

StringIndex [in]

Specifies the device-specific index of an embedded string.

Buffer [out]

Pointer to a caller-allocated buffer that the routine uses to return the embedded string specified by StringIndex. The routine returns a NULL-terminated wide character string in a human-readable format.

BufferLength [in]

Specifies the length, in bytes, of a caller-allocated buffer provided at Buffer. If the buffer is not large enough to return the entire NULL-terminated embedded string, the routine returns nothing in the buffer.

Return value

HidD_GetIndexedString returns TRUE if it successfully returns the entire NULL-terminated embedded string. Otherwise, the routine returns FALSE.

Remarks

Only user-mode applications can call HidD_GetIndexedString. Kernel-mode drivers can use an IOCTL_HID_GET_INDEXED_STRING request.

The maximum possible number of characters in an embedded string is device specific. For USB devices, the maximum string length is 126 wide characters (not including the terminating NULL character).

The iProduct member of a USB_DEVICE_DESCRIPTOR structure for a particular interface is set by the USB common class generic parent driver based on the following rules:

  • If the iInterface member of the USB_INTERFACE_DESCRIPTOR structure for the interface is nonzero, the iProduct member of the USB_DEVICE_DESCRIPTOR structure for the interface is set to the iInterface member of the USB_INTERFACE_DESCRIPTOR structure.

  • If the interface is grouped by a USB interface association descriptor, and the iFunction member of the interface association descriptor for the interface is nonzero, the iProduct member of the USB_DEVICE_DESCRIPTOR structure for the interface is set to the iFunction member of the interface association descriptor.

For more information, see HID Collections.

Requirements

Version

Available in Windows 2000 and later versions of Windows.

Header

Hidsdi.h (include Hidsdi.h)

Library

Hid.lib

See also

HidD_GetManufacturerString
HidD_GetPhysicalDescriptor
HidD_GetProductString
HidD_GetSerialNumberString
IOCTL_HID_GET_INDEXED_STRING
IOCTL_HID_GET_MANUFACTURER_STRING
IOCTL_HID_GET_PRODUCT_STRING
IOCTL_HID_GET_SERIALNUMBER_STRING

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft