IoWMISetSingleInstance-Funktion (wdm.h)

Die IoWMISetSingleInstance-Routine legt die Werte für Eigenschaften innerhalb des Datenblocks instance fest, die der angegebenen WMI-Klasse und instance Namen entsprechen.

Syntax

NTSTATUS IoWMISetSingleInstance(
  [in] PVOID           DataBlockObject,
  [in] PUNICODE_STRING InstanceName,
  [in] ULONG           Version,
  [in] ULONG           ValueBufferSize,
  [in] PVOID           ValueBuffer
);

Parameter

[in] DataBlockObject

Zeiger auf ein WMI-Datenblockobjekt. Der Aufrufer öffnet das Datenblockobjekt für die WMI-Klasse mit der IoWMIOpenBlock-Routine . Das Objekt muss mit dem zugriffsrecht WMIGUID_SET geöffnet werden.

[in] InstanceName

Gibt den Namen des instance des Datenblocks an. Dieser Wert entspricht dem Wert der InstanceName-Eigenschaft für den Block.

[in] Version

Für die zukünftige Verwendung reserviert. Aufrufer müssen diesen Parameter auf Null festlegen.

[in] ValueBufferSize

Gibt die Größe des Puffers in Bytes an, der im ValueBuffer-Parameter übergeben wird.

[in] ValueBuffer

Zeiger auf den Puffer, der die neuen Werte für die Eigenschaften im Datenblock enthält.

Rückgabewert

Die Routine gibt einen NTSTATUS-Code zurück. Mögliche Rückgabewerte sind:

Rückgabecode Beschreibung
STATUS_SUCCESS
Der Vorgang wurde erfolgreich ausgeführt. Die Werte des WMI-Datenblocks instance Eigenschaften werden auf den Inhalt des Puffers aktualisiert, auf den der ValueBuffer-Parameter verweist.
STATUS_WMI_GUID_NOT_FOUND
Die WMI-Klasse wird ohne Treiber implementiert.
STATUS_WMI_INSTANCE_NOT_FOUND
Kein Treiber implementiert eine instance der WMI-Klasse mit der InstanceName-Eigenschaft, die dem im InstanceName-Parameter angegebenen Wert entspricht.
STATUS_WMI_READ_ONLY
Alle Eigenschaften der WMI-Klasse sind schreibgeschützt.
STATUS_WMI_SET_FAILURE
Der Treiber, der den WMI-Datenblock instance implementiert, kann die instance nicht aktualisieren.

Hinweise

IoWMISetSingleInstance bestimmt, welche Treiber möglicherweise die angegebene WMI-Klasse und instance Namen unterstützen, und stellt eine IRP_MN_CHANGE_SINGLE_INSTANCE Anforderung an jeden solchen Treiber aus. Der Treiber, der den Datenblock instance mit der übereinstimmenden InstanceName-Eigenschaft exportiert, aktualisiert seinen Datenblock instance. Beachten Sie, dass ein Datenblock sowohl über schreibgeschützte als auch über Lese-/Schreibeigenschaften verfügen kann. In diesem Fall werden nur die Lese-/Schreibeigenschaften aktualisiert und STATUS_SUCCESS zurückgegeben.

Treiber können auch die IoWMISetSingleItem-Routine verwenden, um eine einzelne Eigenschaft innerhalb der Klasse instance zu aktualisieren.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows XP und höheren Versionen des Windows-Betriebssystems.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Weitere Informationen

IRP_MN_CHANGE_SINGLE_INSTANCE

IoWMIOpenBlock

IoWMIQuerySingleInstance

IoWMISetSingleItem