Condividi tramite


Funzione IoWMISetSingleInstance (wdm.h)

La routine IoWMISetSingleInstance imposta i valori per le proprietà all'interno dell'istanza del blocco di dati corrispondente alla classe WMI e al nome dell'istanza specificati.

Sintassi

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

Parametri

[in] DataBlockObject

Puntatore a un oggetto blocco di dati WMI. Il chiamante apre l'oggetto blocco di dati per la classe WMI con la routine IoWMIOpenBlock. L'oggetto deve essere aperto con il diritto di accesso WMIGUID_SET.

[in] InstanceName

Specifica il nome dell'istanza del blocco di dati. Questo valore corrisponde al valore della proprietà InstanceName per il blocco.

[in] Version

Riservato per uso futuro. I chiamanti devono impostare questo parametro su zero.

[in] ValueBufferSize

Specifica le dimensioni, in byte, del buffer passato nel parametro ValueBuffer.

[in] ValueBuffer

Puntatore al buffer che contiene i nuovi valori per le proprietà all'interno del blocco di dati.

Valore restituito

La routine restituisce un codice NTSTATUS. I possibili valori restituiti includono:

Codice restituito Descrizione
STATUS_SUCCESS
Operazione riuscita. I valori delle proprietà dell'istanza del blocco di dati WMI vengono aggiornati al contenuto del buffer a cui punta il parametro ValueBuffer.
STATUS_WMI_GUID_NOT_FOUND
Nessun driver implementa la classe WMI.
STATUS_WMI_INSTANCE_NOT_FOUND
Nessun driver implementa un'istanza della classe WMI con proprietà InstanceName uguale al valore specificato nel parametro InstanceName.
STATUS_WMI_READ_ONLY
Tutte le proprietà della classe WMI sono di sola lettura.
STATUS_WMI_SET_FAILURE
Il driver che implementa l'istanza del blocco di dati WMI non è in grado di aggiornare l'istanza.

Osservazioni

IoWMISetSingleInstance determina quali driver possono supportare la classe WMI e il nome dell'istanza WMI specificati e invia una richiesta di IRP_MN_CHANGE_SINGLE_INSTANCE a ogni driver. Il driver che esporta l'istanza del blocco di dati con la corrispondenza InstanceName proprietà aggiorna l'istanza del blocco di dati. Si noti che un blocco di dati potrebbe avere proprietà di sola lettura e di lettura/scrittura. In questo caso, verranno aggiornate solo le proprietà di lettura/scrittura e STATUS_SUCCESS viene restituito.

I driver possono anche usare la routine IoWMISetSingleItem per aggiornare una singola proprietà all'interno dell'istanza della classe.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile in Windows XP e versioni successive del sistema operativo Windows.
piattaforma di destinazione Universale
intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL <= APC_LEVEL

Vedere anche

IRP_MN_CHANGE_SINGLE_INSTANCE

IoWMIOpenBlock

IoWMIQuerySingleInstance

IoWMISetSingleItem