Condividi tramite


Funzione IoWMISetSingleInstance (wdm.h)

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

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 dati WMI. Il chiamante apre l'oggetto blocco 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 utilizzi futuri. 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 valori restituiti possibili includono:

Codice restituito Descrizione
STATUS_SUCCESS
Operazione completata. I valori delle proprietà dell'istanza del blocco 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 la 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 dati WMI non è in grado di aggiornare l'istanza.

Commenti

IoWMISetSingleInstance determina quali driver possono supportare la classe e il nome dell'istanza WMI specificati e genera una richiesta di IRP_MN_CHANGE_SINGLE_INSTANCE a ogni driver. Il driver che esporta l'istanza del blocco dati con la proprietà InstanceName corrispondente aggiorna l'istanza del blocco dati. Si noti che un blocco di dati potrebbe avere proprietà di sola lettura e di sola 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.

Requisiti

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

Vedi anche

IRP_MN_CHANGE_SINGLE_INSTANCE

IoWMIOpenBlock

IoWMIQuerySingleInstance

IoWMISetSingleItem