Methode SWbemObject.SpawnInstance_

Verwenden Sie die Methode SpawnInstance_ des Objekts SWbemObject, um eine neue Instanz einer Klasse zu erstellen. Das aktuelle Objekt muss eine Klassendefinition sein, die von WMI über eine Methode wie SWbemServices.Get oder SWbemServices.ExecQuery abgerufen wird. Verwenden Sie dann diese Klassendefinition, um neue Instanzen zu erstellen. Erstellen Sie alle neuen Instanzen lokal innerhalb des Prozesses, und rufen Sie dann SWbemObject.Put_ auf, um die Instanz tatsächlich innerhalb von WMI zu erstellen.

Hinweis

Das Erstellen einer Instanz aus einer Instanz wird unterstützt, aber die zurückgegebene Instanz ist leer.

Eine Erläuterung dieser Syntax finden Sie unter Dokumentkonventionen für die Skript-API.

Syntax

objNewInstance = .SpawnInstance_( _
  [ ByVal iFlags ] _
)

Parameter

iFlags [in, optional]

Ist reserviert und muss bei Angabe auf „0“ festgelegt werden.

Rückgabewert

Bei erfolgreicher Ausführung gibt dieser Aufruf ein Objekt SWbemObject zurück, das eine neue Instanz der Klasse enthält.

Fehlercodes

Nach Abschluss der Methode SpawnInstance_ enthält das Objekt Err möglicherweise einen der Fehlercodes aus der folgenden Liste.

wbemErrIncompleteClass - 2147749920 (0x80041020)

Das aktuelle Objekt ist keine gültige Klassendefinition und kann keine neuen Instanzen erstellen. Es ist entweder unvollständig oder wurde nicht bei WMI mithilfe von SWbemObject.Put_ registriert.

wbemErrIllegalOperation - 2147749918 (0x8004101E)

Wird zurückgegeben, wenn diese Methode für eine Instanz anstelle einer Klasse verwendet wird.

wbemErrInvalidParameter - 2147749896 (0x80041008)

Es wurde ein ungültiger Parameter angegeben.

wbemErrOutOfMemory – 2147749894 (0x80041006)

Es ist nicht genügend Arbeitsspeicher zum Abschließen des Vorgangs vorhanden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista
Unterstützte Mindestversion (Server)
Windows Server 2008
Header
Wbemdisp.h
Typbibliothek
Wbemdisp.tlb
DLL
Wbemdisp.dll
CLSID
CLSID_SWbemObject
IID
IID_ISWbemObject

Weitere Informationen

SWbemObject

SWbemObject.Put_

SWbemServices.Get