IOCTL_HPMI_QUERY_CAPABILITIES IOCTL (hpmi.h)
[Alcune informazioni riguardano il prodotto non rilasciato che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce garanzie, esplicite o implicite, relativamente alle informazioni fornite qui.
Il comando IOCTL_HPMI_QUERY_CAPABILITIES viene inviato alle funzionalità di query supportate dai servizi HPMI e Windows richiesti da HPMI. Windows eseguirà questo IOCL a HPMI una volta dopo che viene individuata una nuova istanza del driver HPMI.
Codice principale
Buffer di input
Il membro AssociatedIrp.SystemBuffer del pacchetto di richiesta I/O punta a un buffer allocato dall'iniziatore usato sia come buffer di input che come buffer di output per la richiesta. In caso di input, questo buffer contiene una struttura HPMI_QUERY_CAPABILITIES in cui la versione è impostata su un valore valido.
Lunghezza del buffer di input
Il membro Parameters.DeviceIoControl.InputBufferLength del percorso dello stack I/O corrente di IRP (IO_STACK_LOCATION) viene impostato sulle dimensioni in byte del buffer a cui punta il membro AssociatedIrp.SystemBuffer. Questa dimensione deve essere maggiore o uguale a sizeof HPMI_QUERY_CAPABILITIES struttura oppure la richiesta avrà esito negativo con uno stato di errore di STATUS_INVALID_PARAMETER.
Buffer di output
Se la richiesta viene completata correttamente, il buffer a cui punta il membro AssociatedIrp.SystemBuffer contiene le informazioni richieste sulla funzionalità HPMI. Situato all'inizio di questo buffer è una struttura HPMI_QUERY_CAPABILITIES_RESPONSE che indica il tipo e le dimensioni delle informazioni nel buffer.
Lunghezza del buffer di output
Il membro Parameters.DeviceIoControl.OutputBufferLength del percorso dello stack I/O corrente di IRP è impostato sulle dimensioni in byte del buffer a cui punta il membro AssociatedIrp.SystemBuffer. Affinché la richiesta abbia esito positivo, questa dimensione deve essere sufficientemente grande da contenere la funzionalità HPMI descritta in HPMI_QUERY_CAPABILITIES_RESPONSE. In caso contrario, la richiesta avrà esito negativo con stato di errore STATUS_BUFFER_TOO_SMALL.
Buffer di input/output
TBD
Lunghezza del buffer di input/output
TBD
Blocco di stato
Irp-> IoStatus.Status è impostato su STATUS_SUCCESS se la richiesta ha esito positivo. In caso contrario, stato alla condizione di errore appropriata come codice NTSTATUS, ad esempio STATUS_INVALID_PARAMETER.
Osservazioni
La richiesta di IOCTL_HPMI_QUERY_CAPABILITIES esegue una query sulle funzionalità HPMI o sulle informazioni sugli asset del contatore di potenza. Il valore della struttura di input HPMI_QUERY_CAPABILITIES specifica il tipo di informazioni sulle funzionalità da restituire. Il tipo di dati e il contenuto del buffer di output variano in base ai dati richiesti.
Questo IOCTL può essere rilasciato più volte, HPMI deve rispondere con la stessa
informazioni in HPMI_QUERY_CAPABILITIES_RESPONSE, come risposta a tutti
chiamate IOCTL successive.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile in Windows 10 versione 1709 e successive dei sistemi operativi Windows. |
intestazione | hpmi.h (include Hpmi.h) |
Vedere anche
creazione di richieste IOCTL nei driver
WdfIoTargetSendInternalIoctlOthersSynchronously