Metodo IWbemServices::P utClass (wbemcli.h)
Il metodo IWbemServices::P utClass crea una nuova classe o aggiorna una classe esistente. La classe specificata dal parametro pObject deve essere stata inizializzata correttamente con tutti i valori di proprietà necessari.
L'utente potrebbe non creare classi con nomi che iniziano o terminano con un carattere di sottolineatura (_). Questa opzione è riservata alle classi di sistema.
Sintassi
HRESULT PutClass(
[in] IWbemClassObject *pObject,
[in] long lFlags,
[in] IWbemContext *pCtx,
[out] IWbemCallResult **ppCallResult
);
Parametri
[in] pObject
Deve puntare a una definizione di classe valida. Il conteggio dei riferimenti non viene modificato.
[in] lFlags
I flag seguenti influiscono sul comportamento di questo metodo.
WBEM_FLAG_USE_AMENDED_QUALIFIERS
Se questo flag è impostato, WMI non archivia alcun qualificatore con il sapore modificato. Se questo flag non è impostato, si presuppone che questo oggetto non sia localizzato e che tutti i qualificatori vengano archiviati con questa istanza.
WBEM_FLAG_CREATE_OR_UPDATE
Questo flag causa la creazione della classe se non esiste o sovrascrive se esiste già.
WBEM_FLAG_UPDATE_ONLY
Questo flag causa l'aggiornamento di questa chiamata. La classe deve esistere per la corretta riuscita della chiamata.
WBEM_FLAG_CREATE_ONLY
Questo flag viene usato solo per la creazione. La chiamata ha esito negativo se la classe esiste già.
WBEM_FLAG_RETURN_IMMEDIATELY
Questo flag causa una chiamata semisynchrono. Per altre informazioni, vedere Chiamata di un metodo.
WBEM_FLAG_OWNER_UPDATE
I provider push devono specificare questo flag quando si chiama PutClass per indicare che questa classe è stata modificata.
WBEM_FLAG_UPDATE_COMPATIBLE
Questo flag consente di aggiornare una classe se non sono presenti classi derivate e non sono presenti istanze per tale classe. Consente anche gli aggiornamenti in tutti i casi se la modifica è solo per qualificatori non importanti (ad esempio, il qualificatore Descrizione ). Si tratta del comportamento predefinito per questa chiamata e viene usato per la compatibilità con le versioni precedenti di Gestione di Windows. Se la classe ha istanze o modifiche sono di qualificatori importanti, l'aggiornamento ha esito negativo.
WBEM_FLAG_UPDATE_SAFE_MODE
Questo flag consente gli aggiornamenti delle classi anche se sono presenti classi figlio, purché la modifica non causa conflitti con le classi figlio. Un esempio di aggiornamento di questo flag consente di aggiungere una nuova proprietà alla classe base non menzionata in precedenza nelle classi figlio. Se la classe ha istanze, l'aggiornamento ha esito negativo.
WBEM_FLAG_UPDATE_FORCE_MODE
Questo flag forza gli aggiornamenti delle classi quando esistono classi figlio in conflitto. Un esempio di aggiornamento di questo flag forzarebbe se un qualificatore di classe fosse definito in una classe figlio e la classe base tentò di aggiungere lo stesso qualificatore in conflitto con quello esistente. In modalità forzata, questo conflitto verrà risolto eliminando il qualificatore in conflitto nella classe figlio.
[in] pCtx
In genere NULL. In caso contrario, si tratta di un puntatore a un oggetto IWbemContext richiesto dal provider di classe dinamico che produce le istanze della classe. I valori nell'oggetto contesto devono essere specificati nella documentazione del provider in questione. Per altre informazioni su questo parametro, vedere Creazione di chiamate a WMI.
[out] ppCallResult
Se NULL, questo parametro non viene usato. Se il parametro lFlags contiene WBEM_FLAG_RETURN_IMMEDIATELY, questa chiamata restituisce immediatamente con WBEM_S_NO_ERROR. Il parametro ppCallResult riceve un puntatore a un nuovo oggetto IWbemCallResult , che può quindi essere eseguito il polling per ottenere il risultato usando il metodo IWbemCallResult::GetCallStatus .
Valore restituito
Questo metodo restituisce un valore HRESULT che indica lo stato della chiamata al metodo. L'elenco seguente elenca il valore contenuto in un HRESULT.
In caso di errore, è possibile ottenere informazioni disponibili dalla funzione COM GetErrorInfo.
I codici di errore specifici di COM possono essere restituiti anche se i problemi di rete causano la perdita della connessione remota a Gestione Windows.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista |
Server minimo supportato | Windows Server 2008 |
Piattaforma di destinazione | Windows |
Intestazione | wbemcli.h (include Wbemidl.h) |
Libreria | Wbemuuid.lib |
DLL | Fastprox.dll; Esscli.dll; FrameDyn.dll; FrameDynOS.dll; Ntevt.dll; Stdprov.dll; Viewprov.dll; Wbemcomn.dll; Wbemcore.dll; Wbemess.dll; Wbemsvc.dll; Wmipicmp.dll; Wmidcprv.dll; Wmipjobj.dll; Wmiprvsd.dll |