funzione HidP_GetCollectionDescription (hidpddi.h)
Riempie un blocco di descrizione del dispositivo con la descrizione della raccolta e le informazioni relative all'ID report corrispondente per il descrittore di report specificato. Un minidriver HID in genere non deve chiamare questa funzione. Restituisce invece il descrittore del report al driver Hidclass in risposta alla IOCTL_HID_GET_REPORT_DESCRIPTOR.
Sintassi
NTSTATUS HidP_GetCollectionDescription(
[in] PHIDP_REPORT_DESCRIPTOR ReportDesc,
[in] ULONG DescLength,
[in] POOL_TYPE PoolType,
[out] PHIDP_DEVICE_DESC DeviceDescription
);
Parametri
[in] ReportDesc
Puntatore a una matrice UCHAR contenente il descrittore del report non elaborato.
[in] DescLength
Lunghezza della matrice descrittore del report.
[in] PoolType
Valore POOL_TYPE che indica il tipo di pool da cui viene allocata la memoria per l'elenco collegato. Ciò include ogni elemento matrice HIDP_COLLECTION_DESC di HIDP_DEVICE_DESC, ogni HIDP_PREPARSED_DATA in ogni HIDP_COLLECTION_DESC, ogni elemento matrice HIDP_REPORT_IDS di HIDP_DEVICE_DESC.
[out] DeviceDescription
Puntatore a una struttura HIDP_DEVICE_DESC popolata con il blocco di descrizione del dispositivo riempito in descrittori di raccolta come elenchi collegati. Si tratta di una struttura allocata dal chiamante. Tuttavia, gli elementi della matrice HIDP_COLLECTION_DESC e gli elementi della matrice HIDP_REPORT_IDS vengono allocati da questa funzione.
Valore restituito
HidP_GetCollectionDescription può restituire uno di questi valori: TRUE se riempie correttamente il blocco di descrizione del dispositivo. In caso contrario, restituisce FALSE.
Valore restituito | Descrizione |
---|---|
|
È stato analizzato correttamente il descrittore del report e allocato i blocchi di memoria necessari per descrivere il dispositivo. |
|
Impossibile trovare raccolte di livello superiore nel descrittore del report. |
|
È stato rilevato un errore nel descrittore del report. Vedere il codice di errore nel campo Dbg della struttura HIDP_DEVICE_DESC . |
|
Trovato la fine del descrittore del report quando prevede più dati. |
|
Impossibile allocare memoria. |
|
Impossibile analizzare un elemento nel descrittore del report. |
|
ID report di 0 trovato nel descrittore. |
Commenti
Per un descrittore di report non elaborato specificato dal parametro ReportDesc , HidP_GetCollectionDescription compilare il blocco DeviceDescription con un elenco collegato allocato del chiamante di descrittori di raccolta e le informazioni relative all'ID report descritte dal descrittore del report specificato. La memoria per le informazioni sulla raccolta e le informazioni reportID vengono allocate in base al valore PoolType .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows 2000 e versioni successive di Windows. |
Piattaforma di destinazione | Universale |
Intestazione | hidpddi.h (include Hidpddi.h) |
Libreria | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |