Condividi tramite


IOCTL_HID_GET_SERIALNUMBER_STRING IOCTL (hidclass.h)

La richiesta di IOCTL_HID_GET_SERIALNUMBER_STRING ottiene la stringa incorporata di una raccolta di primo livello che identifica il numero di serie del dispositivo. La stringa recuperata è una stringa di caratteri wide con terminazione NULL in un formato leggibile.

Per informazioni generali sui dispositivi HIDClass, vedere Raccolte HID.

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Parameters.DeviceIoControl.OutputBufferLength nella posizione dello stack I/O di IRP indica le dimensioni, in byte, del buffer di output. Se il buffer di output non è sufficientemente grande da contenere l'intera stringa incorporata con terminazione NULL, la richiesta non 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 di terminazione).

Buffer di output

Irp->MdlAddress punta a un buffer per ricevere la stringa del numero di serie (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 errori. In caso contrario, viene impostato su un codice di errore NTSTATUS appropriato.

Requisiti

Requisito Valore
Intestazione hidclass.h (include Hidclass.h)

Vedi anche

HidD_GetIndexedString

HidD_GetManufacturerString

HidD_GetPhysicalDescriptor

HidD_GetProductString

HidD_GetSerialNumberString

IOCTL_HID_GET_INDEXED_STRING

IOCTL_HID_GET_MANUFACTURER_STRING

IOCTL_HID_GET_PRODUCT_STRING