IWbemServices::D eleteInstance-Methode (wbemcli.h)

Die IWbemServices::D eleteInstance-Methode löscht eine instance einer vorhandenen Klasse im aktuellen Namespace.

Syntax

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

Parameter

[in] strObjectPath

Gültiger BSTR, der den Objektpfad zum zu löschenden instance enthält.

[in] lFlags

Einer der folgenden Werte ist gültig.

WBEM_FLAG_RETURN_IMMEDIATELY

Dieses Flag bewirkt, dass es sich um einen semisynchronen Aufruf handelt. Weitere Informationen finden Sie unter Aufrufen einer Methode.

[in] pCtx

Normalerweise NULL. Andernfalls ist dies ein Zeiger auf ein IWbemContext-Objekt, das von dem Anbieter verwendet werden kann, der die instance löscht. Die Werte im Kontextobjekt müssen in der Dokumentation für den betreffenden Anbieter angegeben werden.

[out] ppCallResult

Bei NULL wird dieser Parameter nicht verwendet. Wenn ppCallResult angegeben ist, muss beim Eintrag auf NULL gezeigt werden. Wenn der lFlags-ParameterWBEM_FLAG_RETURN_IMMEDIATELY enthält, wird dieser Aufruf sofort mit WBEM_S_NO_ERROR zurückgegeben. Der ppCallResult-Parameter empfängt einen Zeiger auf ein neues IWbemCallResult-Objekt , das dann abgefragt werden kann, um das Ergebnis mithilfe der GetCallStatus-Methode abzurufen.

Rückgabewert

Diese Methode gibt ein HRESULT zurück, das den Status des Methodenaufrufs angibt. Die folgende Liste listet den Wert auf, der in einem HRESULT enthalten ist.

Bei Einem Fehler können Sie alle verfügbaren Informationen von der COM-Funktion GetErrorInfo abrufen.

COM-spezifische Fehlercodes können auch zurückgegeben werden, wenn Netzwerkprobleme dazu führen, dass die Remoteverbindung mit der Windows-Verwaltung verloren geht.

Hinweise

Die IWbemServices::D eleteInstance-Methode wird aufgerufen, um eine vorhandene instance im aktuellen Namespace zu löschen. Instanzen in anderen Namespaces können nicht gelöscht werden. Wenn DeleteInstance aufgerufen wird, um eine instance zu löschen, die zu einer Klasse in einer Hierarchie gehört, ruft die Windows-Verwaltung die DeleteInstanceAsync-Methode für alle Anbieter auf, die für nicht abstrakte Klassen in der Hierarchie verantwortlich sind. Das heißt, wenn der strObjectPath-Parameter eine instance von ClassB identifiziert und ClassB von ClassA, einer nicht abstrakten Klasse, abgeleitet wird und die übergeordnete Klasse von ClassC und ClassD ist, auch nicht abstrakte Klassen, werden die Anbieter für alle vier Klassen aufgerufen.

Die Windows-Verwaltung ruft jeden Anbieter mit einem Objektpfad auf, der so geändert wird, dass er auf seine Klasse verweist. Wenn beispielsweise strObjectPath für den ursprünglichen Aufruf auf "ClassB.k=1" festgelegt ist, würde der Aufruf des Anbieters von ClassA strObjectPath auf "ClassA.k=1" festlegen.

Der Erfolg eines DeleteInstance-Aufrufs hängt nur vom Erfolg eines DeleteInstanceAsync-Aufrufs des Anbieters der höchsten nicht abstrakten Klasse ab. Eine nicht abstrakte Klasse verfügt über eine abstrakte Klasse als übergeordnete Klasse. Wenn der Anbieter für eine dieser Klassen erfolgreich ist, ist der Vorgang erfolgreich; wenn alle derartigen Klassen fehlschlagen, schlägt der Vorgang fehl.

Angenommen, ClassX ist die Basisklasse für die folgende Hierarchie:

  1. ClassA leitet sich von ClassX ab.
  2. ClassB leitet sich von ClassA ab.
  3. ClassC und ClassD leiten sich von ClassB ab.
Wenn ClassX die einzige abstrakte Klasse in der Hierarchie ist und der strObjectPath-Parameter in DeleteInstance auf eine instance von ClassB verweist, muss nur der Anbieter für ClassA in seinem DeleteInstanceAsync-Aufruf erfolgreich sein.

Wenn ClassX, ClassA und ClassB alle abstrakt sind und der strObjectPath-Parameter in DeleteInstance erneut auf eine instance von ClassB verweist, muss entweder der Anbieter für ClassC oder der Anbieter für ClassD erfolgreich sein.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile wbemcli.h (include Wbemidl.h)
Bibliothek 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

Weitere Informationen

Beschreiben eines Instanzobjektpfads

IWbemCallResult

IWbemServices

IWbemServices::D eleteInstanceAsync

Abrufen eines Fehlercodes