IOCTL_HID_GET_PRODUCT_STRING IOCTL (hidclass.h)
La richiesta di IOCTL_HID_GET_PRODUCT_STRING ottiene una stringa incorporata della raccolta di primo livello che identifica il prodotto del produttore. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile.
Per informazioni generali sui dispositivi HIDClass [HID Collections(/windows-hardware/drivers/hid/hid-collections).
Codice principale
Buffer di input
Parameters.DeviceIoControl.OutputBufferLength nella posizione dello stack I/O dell'IRP indica le dimensioni, in byte, del buffer di output. Se il buffer di output non è abbastanza grande per contenere l'intera stringa incorporata con terminazione NULL, la richiesta restituisce nulla nel buffer di output.
Lunghezza del buffer di input
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 terminante).
Buffer di output
Irp->MdlAddress punta a un buffer per ricevere la stringa ID prodotto (stringa di caratteri wide con terminazione NULL).
Lunghezza del buffer di output
Lunghezza di una stringa di caratteri wide con terminazione NULL. Il buffer fornito deve essere <= 4093 byte (2^12 - 3).
Blocco dello stato
Il driver di classe HID imposta i campi seguenti di Irp-IoStatus>:
Le informazioni vengono impostate sul numero di byte trasferiti dal dispositivo.
Lo stato è impostato su STATUS_SUCCESS se il trasferimento è stato completato senza errore. In caso contrario, è impostato su un codice di errore NTSTATUS appropriato.
Requisiti
Requisito | Valore |
---|---|
Intestazione | hidclass.h (include Hidclass.h) |