WbemChangeFlagEnum-Enumeration (wbemdisp.h)

Die WbemChangeFlagEnum-Konstanten definieren, wie ein Schreibvorgang in eine Klasse oder eine instance ausgeführt wird. Ein Schreibvorgang wird von SWbemObject.Put_ oder von SWbemServicesEx.Put_ ausgeführt. Diese Flags werden von SWbemObject.Put_ und SWbemObject.PutAsync_ verwendet.

Die WMI-Skripttypbibliothek WbemDisp.tlb definiert diese Konstanten. Visual Basic-Anwendungen können auf diese Bibliothek zugreifen. Skriptsprachen müssen den Wert der Konstanten direkt verwenden, es sei denn, sie verwenden das WSH-XML-Dateiformat (Windows Script Host). Weitere Informationen finden Sie unter Verwenden der WMI-Skripttypbibliothek.

Syntax

typedef enum WbemChangeFlagEnum {
  wbemChangeFlagCreateOrUpdate = 0,
  wbemChangeFlagUpdateOnly = 0x1,
  wbemChangeFlagCreateOnly = 0x2,
  wbemChangeFlagUpdateCompatible = 0,
  wbemChangeFlagUpdateSafeMode = 0x20,
  wbemChangeFlagUpdateForceMode = 0x40,
  wbemChangeFlagStrongValidation = 0x80,
  wbemChangeFlagAdvisory = 0x10000
} ;

Konstanten

 
wbemChangeFlagCreateOrUpdate
Wert: 0
Bewirkt, dass die Klasse oder instance erstellt wird, wenn sie nicht vorhanden ist, oder überschrieben wird, wenn sie bereits vorhanden ist.
wbemChangeFlagUpdateOnly
Wert: 0x1
Bewirkt, dass der Aufruf aktualisiert wird. Die Klasse oder Instanz muss vorhanden sein, damit der Aufruf erfolgreich ist.
wbemChangeFlagCreateOnly
Wert: 0x2
Wird nur für die Erstellung verwendet. Der Aufruf schlägt fehl, wenn die Klasse oder instance bereits vorhanden ist.
wbemChangeFlagUpdateCompatible
Wert: 0
Ermöglicht das Aktualisieren einer Klasse, wenn keine abgeleiteten Klassen und keine Instanzen für diese Klasse vorhanden sind. Es lässt auch Updates in allen Fällen zu, wenn die Änderung nur auf nicht wichtige Qualifizierer (z. B. den Beschreibungsqualifizierer) erfolgt. Wenn die Klasse über Instanzen verfügt, ist die Aktualisierung nicht erfolgreich. Dieses Flag wird für die Kompatibilität mit früheren Versionen von WMI verwendet.
wbemChangeFlagUpdateSafeMode
Wert: 0x20
Ermöglicht Aktualisierungen von Klassen auch dann, wenn untergeordnete Klassen vorhanden sind, solange die Änderung keine Konflikte mit untergeordneten Klassen verursacht. Ein Beispiel für eine Aktualisierung dieses Flags wäre das Hinzufügen einer neuen Eigenschaft zur Basisklasse, die zuvor in keiner der untergeordneten Klassen erwähnt wurde. Wenn die Klasse über Instanzen verfügt, ist die Aktualisierung nicht erfolgreich.
wbemChangeFlagUpdateForceMode
Wert: 0x40
Erzwingt Aktualisierungen von Klassen, wenn in Konflikt stehende untergeordnete Klassen vorhanden sind.

Ein Beispiel für eine Aktualisierung dieses Flags wäre, wenn ein Klassenqualifizierer in einer untergeordneten Klasse definiert wurde und die Basisklasse versucht, denselben Qualifizierer in Konflikt mit dem vorhandenen zu fügen. Im Erzwingungsmodus wird dieser Konflikt gelöst, indem der Qualifizierer in der untergeordneten Klasse gelöscht wird. Wenn die Klasse über Instanzen verfügt, ist die Aktualisierung nicht erfolgreich.

Die Verwendung des Erzwingungsmodus zum Aktualisieren einer statischen Klasse führt zum Löschen aller Instanzen dieser Klasse. Das Erzwingen der Aktualisierung für Anbieterklassen löscht keine Instanzen der -Klasse.
wbemChangeFlagStrongValidation
Wert: 0x80
: Benachrichtigt das Betriebssystem, einen Fehler bei Put-Vorgängen an ungültige Systeminstanzen zurückzugeben. Beispiele für solche Instanzen sind ereignisbezogene Instanzen, z. B. Filter, Bindungen oder Anbieter. Wenn diese Instanzen ungültig sind, meldet der Put-Vorgang standardmäßig einen Erfolg, aber im Protokoll wird ein Fehler gemeldet.
wbemChangeFlagAdvisory
Wert: 0x10000

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Kopfzeile wbemdisp.h

Weitere Informationen

Skripting-API-Konstanten