Freigeben über


EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE Rückruffunktion (wdfwmi.h)

[Gilt nur für KMDF]

Die EvtWmiInstanceQueryInstance Rückruffunktion eines WMI-Anbieters kopiert die Instanzdaten eines WMI-Anbieters in einen Puffer für die Übermittlung an einen WMI-Client.

Syntax

EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE EvtWdfWmiInstanceQueryInstance;

NTSTATUS EvtWdfWmiInstanceQueryInstance(
  [in]  WDFWMIINSTANCE WmiInstance,
  [in]  ULONG OutBufferSize,
  [in]  PVOID OutBuffer,
  [out] PULONG BufferUsed
)
{...}

Parameter

[in] WmiInstance

Ein Handle für ein WMI-Instanzobjekt.

[in] OutBufferSize

Die Größe des Ausgabepuffers in Bytes, auf den outBuffer verweist.

[in] OutBuffer

Ein Zeiger auf den Ausgabepuffer.

[out] BufferUsed

Ein Zeiger auf eine Position, die die Anzahl der Bytes empfängt, die der Treiber im Ausgabepuffer platziert. Wenn die Ausgabepuffergröße, die der OutBufferSize Parameter angibt, zu klein ist, legt der Treiber diesen Speicherort auf die erforderliche Puffergröße fest.

Rückgabewert

Die EvtWmiInstanceQueryInstance Rückruffunktion muss STATUS_BUFFER_TOO_SMALL zurückgeben, wenn der Wert des OutBufferSize Parameter angibt, dass der Ausgabepuffer zu klein ist, um die Daten zu empfangen. Andernfalls muss die Rückruffunktion Daten in den Puffer kopieren und STATUS_SUCCESS zurückgeben.

Bemerkungen

Um eine EvtWmiInstanceQueryInstance Rückruffunktion zu registrieren, muss der Treiber die Adresse der Funktion in einer WDF_WMI_INSTANCE_CONFIG Struktur platzieren, bevor WdfWmiInstanceCreateaufgerufen wird.

Bevor das Framework die vom Treiber bereitgestellten Instanzdaten an den WMI-Client sendet, fügt es alle erforderlichen WMI-Headerinformationen zu den Daten hinzu.

Wenn Ihr Treiber das UseContextForQuery Member der WDF_WMI_INSTANCE_CONFIG Struktur des WMI-Instanzobjekts auf TRUE- für einen schreibgeschützten Datenblock festlegt, stellt der Treiber keine EvtWmiInstanceQueryInstance Rückruffunktion bereit.

Wenn Ihr Treiber Zeichenfolgendaten für einen WMI-Client bereitstellen muss, sollte der Treiber die WDF_WMI_BUFFER_APPEND_STRING-Funktion aufrufen, um die Zeichenfolge zu formatieren.

Weitere Informationen zur EvtWmiInstanceQueryInstance Rückruffunktion finden Sie unter Unterstützen von WMI-Datenblöcken und Unterstützen von Read-Only WMI-Datenblöcken.

Das Framework synchronisiert keine Aufrufe der WMI-Ereignisrückruffunktionen eines Treibers miteinander oder mit einer der anderen Ereignisrückruffunktionen des Treibers. Wenn ein EvtWmiInstanceQueryInstance Daten der Rückruffunktion dynamisch ist und für andere Rückruffunktionen freigegeben wird, kann Ihr Treiber die Warten von Sperren oder Drehsperren des Frameworks verwenden,, um den Zugriff auf die Daten zu synchronisieren.

Weitere Informationen zu WMI finden Sie unter Unterstützen von WMI in Framework-Based Drivers.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Minimale KMDF-Version 1.0
Header- wdfwmi.h (einschließen Wdf.h)
IRQL- PASSIVE_LEVEL

Siehe auch

EvtWmiInstanceExecuteMethod

EvtWmiInstanceSetInstance

EvtWmiInstanceSetItem

EvtWmiProviderFunctionControl

WDF_WMI_BUFFER_APPEND_STRING

WDF_WMI_INSTANCE_CONFIG

WdfWmiInstanceCreate