EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE funzione di callback (wdfwmi.h)
[Si applica solo a KMDF]
La funzione di callback EvtWmiInstance di un driver copia i dati dell'istanza di un provider WMI in un buffer per il recapito a un client WMI.
Sintassi
EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE EvtWdfWmiInstanceQueryInstance;
NTSTATUS EvtWdfWmiInstanceQueryInstance(
[in] WDFWMIINSTANCE WmiInstance,
[in] ULONG OutBufferSize,
[in] PVOID OutBuffer,
[out] PULONG BufferUsed
)
{...}
Parametri
[in] WmiInstance
Handle per un oggetto di istanza WMI.
[in] OutBufferSize
Dimensioni, in byte, del buffer di output a cui OutBuffer punta.
[in] OutBuffer
Puntatore al buffer di output.
[out] BufferUsed
Puntatore a una posizione che riceve il numero di byte che il driver inserisce nel buffer di output. Se le dimensioni del buffer di output specificate dal parametro OutBufferSize sono troppo piccole, il driver imposta questa posizione sulle dimensioni del buffer necessarie.
Valore restituito
La funzione di callback EvtWmiInstanceQueryInstance deve restituire STATUS_BUFFER_TOO_SMALL, se il valore del parametro OutBufferSize indica che il buffer di output è troppo piccolo per ricevere i dati. In caso contrario, la funzione di callback deve copiare i dati nel buffer e restituire STATUS_SUCCESS.
Commenti
Per registrare una funzione di callback EvtWmiInstanceQueryInstance , il driver deve inserire l'indirizzo della funzione in una struttura di WDF_WMI_INSTANCE_CONFIG prima di chiamare WdfWmiInstanceCreate.
Prima che il framework invii i dati dell'istanza fornita dal driver al client WMI, aggiunge tutte le informazioni di intestazione WMI necessarie ai dati.
Se il driver imposta il membro UseContextForQuery della struttura di WDF_WMI_INSTANCE_CONFIG dell'istanza WMI su TRUE per un blocco di dati di sola lettura, il driver non fornisce una funzione di callback EvtWmiInstanceQueryInstance .
Se il driver deve fornire dati stringa a un client WMI, il driver deve chiamare la funzione WDF_WMI_BUFFER_APPEND_STRING per formattare la stringa.
Per altre informazioni sulla funzione di callback EvtWmiInstanceQueryInstance , vedere Supporto di blocchi dati WMI di lettura/scrittura e supporto di blocchi di dati WMI Read-Only WMI.
Il framework non sincronizza le chiamate alle funzioni di callback degli eventi WMI di un driver con l'altra o con qualsiasi altra funzione di callback evento del driver. Se i dati della funzione di callback di EvtWmiInstance sono dinamici e condivisi con altre funzioni di callback, il driver può usare i blocchi di attesa o i blocchi di rotazione del framework per sincronizzare l'accesso ai dati.
Per altre informazioni su WMI, vedere Supporto di WMI nei driver di Framework-Based.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Versione KMDF minima | 1,0 |
Intestazione | wdfwmi.h (include Wdf.h) |
IRQL | PASSIVE_LEVEL |