WbemChangeFlagEnum 枚举 (wbemdisp.h)

WbemChangeFlagEnum 常量定义如何对类或实例执行写入操作。写入操作由 SWbemObject.Put_SWbemServicesEx.Put_ 执行。 SWbemObject.Put_SWbemObject.PutAsync_使用这些标志。

WMI 脚本类型库 WbemDisp.tlb 定义这些常量。 Visual Basic 应用程序可以访问此库;脚本语言必须直接使用常量的值,除非它们使用 Windows 脚本主机 (WSH) XML 文件格式。 有关详细信息,请参阅 使用 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
当存在冲突的子类时强制更新类。

此标志强制更新的一个示例是,如果在子类中定义了类限定符,并且基类尝试添加与现有限定符冲突的相同限定符。 在强制模式下,通过删除子类中的 限定符来解决此冲突。 如果类有实例,则更新会失败。

使用强制模式更新静态类会导致删除该类的所有实例。 对提供程序类强制更新不会删除类的实例。
wbemChangeFlagStrongValidation
值: 0x80
通知操作系统将放置操作失败返回到任何无效的系统实例。 此类实例的示例包括与事件相关的实例,例如筛选器、绑定或提供程序。 默认情况下,如果这些实例无效,则 put 操作会报告成功,但日志中会报告错误。
wbemChangeFlagAdvisory
值: 0x10000

要求

要求
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
标头 wbemdisp.h

另请参阅

脚本 API 常量