fonction HidD_GetProductString (hidsdi.h)
La routine HidD_GetProductString retourne la chaîne incorporée d’une collection de niveau supérieur qui identifie le produit du fabricant.
Syntaxe
BOOLEAN HidD_GetProductString(
[in] HANDLE HidDeviceObject,
[out] PVOID Buffer,
[in] ULONG BufferLength
);
Paramètres
[in] HidDeviceObject
Spécifie un handle ouvert à une collection de niveau supérieur.
[out] Buffer
Pointeur vers une mémoire tampon allouée à l’appelant que la routine utilise pour retourner la chaîne de produit demandée. La routine retourne une chaîne de caractères larges terminée par null.
[in] BufferLength
Spécifie la longueur, en octets, d’une mémoire tampon allouée à l’appelant fournie dans La mémoire tampon. Si la mémoire tampon n’est pas assez grande pour renvoyer l’intégralité de la chaîne incorporée terminée par NULL, la routine ne retourne rien dans la mémoire tampon. La mémoire tampon fournie doit être <= 4 093 octets (2^12 – 3).
Valeur retournée
HidD_GetProductString retourne TRUE s’il retourne avec succès l’intégralité de la chaîne incorporée terminée par NULL. Sinon, la routine retourne FALSE. Utilisez GetLastError pour obtenir des informations d’erreur étendues.
Remarques
Seules les applications en mode utilisateur peuvent appeler HidD_GetProductString. Les pilotes en mode noyau peuvent utiliser une requête IOCTL_HID_GET_PRODUCT_STRING .
Le nombre maximal possible de caractères dans une chaîne incorporée est spécifique à l’appareil. Pour les périphériques USB, la longueur maximale de chaîne est de 126 caractères larges (sans le caractère NULL de fin).
Le membre iProduct d’une structure USB_DEVICE_DESCRIPTOR pour une interface particulière est défini par le pilote parent générique de classe commune USB en fonction des règles suivantes :
Si le membre iInterface de la structure USB_INTERFACE_DESCRIPTOR de l’interface est différent de zéro, le membre iProduct de la structure USB_DEVICE_DESCRIPTOR de l’interface est défini sur le membre iInterface de la structure USB_INTERFACE_DESCRIPTOR.
Si l’interface est regroupée par un descripteur d’association d’interface USB et que le membre iFunction du descripteur d’association d’interface pour l’interface est différent de zéro, le membre iProduct de la structure USB_DEVICE_DESCRIPTOR de l’interface est défini sur le membre iFunction du descripteur d’association d’interface.
Si la mémoire tampon fournie n’est pas <= 4 093 octets (2^12 à 3), l’appel peut échouer (en fonction du protocole sous-jacent, HID/Bluetooth/SPI) avec le code d’erreur ERROR_GEN_FAILURE (0x0000001f)
Pour plus d’informations, consultez Collections HID.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows 2000 et versions ultérieures de Windows. |
Plateforme cible | Universal |
En-tête | hidsdi.h (inclure Hidsdi.h) |
Bibliothèque | Hid.lib |
DLL | Hid.dll |