Поделиться через


Перечисление WbemChangeFlagEnum (wbemdisp.h)

Константы WbemChangeFlagEnum определяют, как выполняется операция записи в класс или экземпляр. Операция записи выполняется SWbemObject.Put_ или SWbemServicesEx.Put_. Эти флаги используются SWbemObject.Put_ и SWbemObject.PutAsync_.

Эти константы определяются библиотекой типов скриптов WMI WbemDisp.tlb. Приложения Visual Basic могут получить доступ к этой библиотеке; Языки сценариев должны использовать значение константы напрямую, если они не используют формат XML-файла узла сценариев Windows (WSH). Дополнительные сведения см. в разделе Использование библиотеки типов сценариев WMI.

Синтаксис

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

Константы

 
wbemChangeFlagCreateOrUpdate
Значение: 0
Вызывает создание класса или экземпляра, если они не существуют, или перезаписи, если они уже существуют.
wbemChangeFlagUpdateOnly
Значение: 0x1
Вызывает обновление вызова . Класс или экземпляр должен существовать, чтобы вызов был успешным.
wbemChangeFlagCreateOnly
Значение: 0x2
Используется только для создания. Вызов завершится ошибкой, если класс или экземпляр уже существует.
wbemChangeFlagUpdateCompatible
Значение: 0
Позволяет обновлять класс, если нет производных классов и экземпляров для этого класса. Кроме того, она позволяет выполнять обновления во всех случаях, если изменение относится только к неважным квалификаторам (например, квалификатору описания ). Если класс содержит экземпляры, обновление завершается сбоем. Этот флаг используется для совместимости с предыдущими версиями WMI.
wbemChangeFlagUpdateSafeMode
Значение: 0x20
Позволяет обновлять классы, даже если есть дочерние классы, если изменение не вызывает конфликтов с дочерними классами. Примером обновления этого флага может быть добавление нового свойства в базовый класс, не упомянутый ранее ни в одном из дочерних классов. Если класс содержит экземпляры, обновление завершается сбоем.
wbemChangeFlagUpdateForceMode
Значение: 0x40
Принудительно обновляет классы при наличии конфликтующих дочерних классов.

Примером обновления, вызываемого этим флагом, может быть, если квалификатор класса был определен в дочернем классе, а базовый класс пытался добавить тот же квалификатор в конфликте с существующим. В режиме force этот конфликт разрешается путем удаления квалификатора в дочернем классе. Если класс содержит экземпляры, обновление завершается сбоем.

Использование принудительного режима для обновления статического класса приводит к удалению всех экземпляров этого класса. При принудительном обновлении классов поставщика экземпляры класса не удаляются.
wbemChangeFlagStrongValidation
Значение: 0x80
: Уведомляет операционную систему о том, что сбой при операциях put возвращается во все недопустимые системные экземпляры. Примерами таких экземпляров являются связанные с событиями экземпляры, такие как фильтры, привязки или поставщики. По умолчанию, если эти экземпляры недопустимы, операция put сообщает об успешном выполнении, но в журнале отображается ошибка.
wbemChangeFlagAdvisory
Значение: 0x10000

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Верхняя часть wbemdisp.h

См. также раздел

Константы API скриптов