Auf Englisch lesen

Freigeben über


WmiCompleteRequest-Funktion (wmilib.h)

Die WmiCompleteRequest Routine gibt an, dass ein Treiber die Verarbeitung einer WMI-Anforderung in einer DpWmiXxx Routine abgeschlossen hat.

Syntax

NTSTATUS WmiCompleteRequest(
  [in]      PDEVICE_OBJECT DeviceObject,
  [in, out] PIRP           Irp,
  [in]      NTSTATUS       Status,
  [in]      ULONG          BufferUsed,
  [in]      CCHAR          PriorityBoost
);

Parameter

[in] DeviceObject

Ein Zeiger auf die DEVICE_OBJECTdes Treibers.

[in, out] Irp

Ein Zeiger auf das IRP.

[in] Status

Gibt den Status an, der für das IRP zurückgegeben werden soll.

[in] BufferUsed

Gibt die Anzahl der im Puffer benötigten Bytes an, die an die DpWmiXxx Routine des Treibers übergeben werden. Wenn der Puffer zu klein ist, legt der Treiber Status auf STATUS_BUFFER_TOO_SMALL fest und legt BufferUsed- auf die Anzahl der Bytes fest, die für die zurückgegebenen Daten erforderlich sind. Wenn der übergebene Puffer groß genug ist, legt der Treiber BufferUsed auf die Anzahl der tatsächlich verwendeten Bytes fest.

[in] PriorityBoost

Gibt eine vom System definierte Konstante an, um die Laufzeitpriorität des ursprünglichen Threads zu erhöhen, der den Vorgang angefordert hat. WMI ruft IoCompleteRequest mit PriorityBoost- auf, wenn das IRP abgeschlossen ist. Weitere Informationen zu PriorityBoostfinden Sie unter IoCompleteRequest-.

Rückgabewert

WmiCompleteRequest gibt den Wert zurück, der im parameter Status übergeben wurde, es sei denn, Status auf STATUS_BUFFER_TOO_SMALL festgelegt wurde. Wenn der Treiber Status gleich STATUS_BUFFER_TOO_SMALL festgelegt hat, erstellt WmiCompleteRequest eine WNODE_TOO_SMALL Struktur und gibt STATUS_SUCCESS zurück. Der Rückgabewert von WmiCompleteRequest sollte vom Treiber in seiner DpWmiXxx--Routine zurückgegeben werden.

Bemerkungen

Ein Treiber ruft WmiCompleteRequest von einer DpWmiXxx- Routine auf, nachdem alle anderen Verarbeitungen in dieser Routine abgeschlossen wurden, oder nachdem der Treiber die gesamte Verarbeitung für ein ausstehendes IRP abgeschlossen hat. WmiCompleteRequest füllt ein WNODE_XXX- mit allen vom Treiber zurückgegebenen Daten und ruft IoCompleteRequest- auf, um das IRP abzuschließen.

Ein Treiber sollte immer den Rückgabewert von WmiCompleteRequest- in seiner DpWmiXxx- Routine zurückgeben.

Ein Treiber darf nicht WmiCompleteRequest- aus seiner DpWmiQueryRegInfo-Routine aufrufen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Universal
Header- wmilib.h (einschließen Wmilib.h)
Library Wmilib.lib
IRQL- <= DISPATCH_LEVEL

Siehe auch

DpWmiExecuteMethod

DpWmiFunctionControl-

DpWmiQueryDataBlock-

DpWmiQueryReginfo

DpWmiSetDataBlock-

DpWmiSetDataItem-

IoCompleteRequest-

WmiSystemControl-