Condividi tramite


funzione HidD_GetIndexedString (hidsdi.h)

La routine HidD_GetIndexedString restituisce una stringa incorporata specificata da una raccolta di primo livello.

Sintassi

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

Parametri

[in] HidDeviceObject

Specifica un handle aperto per una raccolta di primo livello.

[in] StringIndex

Specifica l'indice specifico del dispositivo di una stringa incorporata.

[out] Buffer

Puntatore a un buffer allocato dal chiamante usato dalla routine per restituire la stringa incorporata specificata da StringIndex. La routine restituisce una stringa di caratteri wide con terminazione NULL in un formato leggibile.

[in] BufferLength

Specifica la lunghezza, in byte, di un buffer allocato dal chiamante fornito in Buffer. Se il buffer non è sufficientemente grande da restituire l'intera stringa incorporata con terminazione NULL, la routine non restituisce alcun valore nel buffer. Il buffer fornito deve essere <= 4093 byte (2^12 - 3).

Valore restituito

HidD_GetIndexedString restituisce TRUE se restituisce correttamente l'intera stringa incorporata con terminazione NULL. In caso contrario, la routine restituisce FALSE. Usare GetLastError per ottenere informazioni estese sull'errore.

Commenti

Solo le applicazioni in modalità utente possono chiamare HidD_GetIndexedString. I driver in modalità kernel possono usare una richiesta di IOCTL_HID_GET_INDEXED_STRING .

Il numero massimo possibile di caratteri in una stringa incorporata è specifico del dispositivo. Per i dispositivi USB, la lunghezza massima della stringa è di 126 caratteri wide (non incluso il carattere NULL di terminazione).

Il membro iProduct di una struttura USB_DEVICE_DESCRIPTOR per una particolare interfaccia viene impostato dal driver padre generico della classe comune USB in base alle regole seguenti:

  • Se il membro iInterface della struttura USB_INTERFACE_DESCRIPTOR per l'interfaccia è diverso da zero, il membro iProduct della struttura USB_DEVICE_DESCRIPTOR per l'interfaccia viene impostato sul membro iInterface della struttura USB_INTERFACE_DESCRIPTOR.

  • Se l'interfaccia è raggruppata da un descrittore di associazione dell'interfaccia USB e il membro iFunction del descrittore di associazione dell'interfaccia per l'interfaccia è diverso da zero, il membro iProduct della struttura USB_DEVICE_DESCRIPTOR per l'interfaccia viene impostato sul membro iFunction del descrittore di associazione dell'interfaccia.

Se il buffer fornito non <è = 4093 byte (2^12 - 3), la chiamata potrebbe non riuscire (a seconda del protocollo sottostante, HID/Bluetooth/SPI) con codice di errore ERROR_GEN_FAILURE (0x0000001f)

Per altre informazioni, vedere Raccolte HID.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows 2000 e versioni successive di Windows.
Piattaforma di destinazione Universale
Intestazione hidsdi.h (include Hidsdi.h)
Libreria Hid.lib
DLL Hid.dll

Vedi anche

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