Condividi tramite


Metodo IWbemServices::D eleteInstance (wbemcli.h)

Il metodo IWbemServices::D eleteInstance elimina un'istanza di una classe esistente nello spazio dei nomi corrente.

Sintassi

HRESULT DeleteInstance(
  [in]  const BSTR      strObjectPath,
  [in]  long            lFlags,
  [in]  IWbemContext    *pCtx,
  [out] IWbemCallResult **ppCallResult
);

Parametri

[in] strObjectPath

BSTR valido contenente il percorso dell'oggetto dell'istanza da eliminare.

[in] lFlags

Uno dei valori seguenti è valido.

WBEM_FLAG_RETURN_IMMEDIATELY

Questo flag causa una chiamata semisynchrono. Per altre informazioni, vedere Chiamata di un metodo.

[in] pCtx

In genere NULL. In caso contrario, si tratta di un puntatore a un oggetto IWbemContext che può essere usato dal provider che elimina l'istanza. I valori nell'oggetto contesto devono essere specificati nella documentazione del provider in questione.

[out] ppCallResult

Se NULL, questo parametro non viene usato. Se è specificato ppCallResult , deve essere impostato su NULL nella voce. 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 GetCallStatus .

Valore restituito

Questo metodo restituisce un 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.

Commenti

Il metodo IWbemServices::D eleteInstance viene chiamato per eliminare un'istanza esistente nello spazio dei nomi corrente. Non è possibile eliminare istanze in altri spazi dei nomi. Quando DeleteInstance viene chiamato per eliminare un'istanza appartenente a una classe in una gerarchia, Windows Management chiama il metodo DeleteInstanceAsync per tutti i provider responsabili delle classi non astratte nella gerarchia. Ovvero, se il parametro strObjectPath identifica un'istanza di ClassB e ClassB deriva da ClassA, una classe non astratta ed è la classe padre di ClassC e ClassD, vengono chiamati anche i provider per tutte e quattro le classi.

Gestione Windows chiama ogni provider con un percorso oggetto modificato per puntare alla classe. Ad esempio, se strObjectPath per la chiamata originale è impostato su "ClassB.k=1", la chiamata al provider di ClassA imposta strObjectPath su "ClassA.k=1".

L'esito positivo di una chiamata DeleteInstance dipende solo dall'esito positivo di una chiamata DeleteInstanceAsync al provider della classe non astratta più superiore. Una classe non astratta ha una classe astratta come padre. Se il provider per una di queste classi ha esito positivo, l'operazione ha esito positivo; se tutte queste classi hanno esito negativo, l'operazione ha esito negativo.

Si supponga, ad esempio, che ClassX sia la classe di base per la gerarchia seguente:

  1. ClassA deriva da ClassX.
  2. ClassB deriva da ClassA.
  3. ClassC e ClassD derivano da ClassB.
Se ClassX è l'unica classe astratta nella gerarchia e il parametro strObjectPath in DeleteInstance punta a un'istanza di ClassB, solo il provider per ClassA deve avere esito positivo nella chiamata DeleteInstanceAsync.

Se ClassX, ClassA e ClassB sono tutti astratti e il parametro strObjectPath in DeleteInstance punta di nuovo a un'istanza di ClassB, il provider per ClassC o il provider per ClassD deve avere esito positivo.

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

Vedi anche

Descrizione di un percorso dell'oggetto istanza

IWbemCallResult

Iwbemservices

IWbemServices::D eleteInstanceAsync

Recupero di un codice di errore