iMofCompiler::CreateBMOF 方法 (wbemcli.h)
IMofCompiler::CreateBMOF 方法创建二进制 MOF 文件。 文件创建是通过分析常规 MOF 文件并将类和实例的二进制表示形式存储为特殊文件格式来完成的。 通常,此数据二进制大型对象 (BLOB) 作为资源存储在可执行文件中,稍后可以提取该资源以调用 CompileBuffer 方法。 IMofCompiler::CreateBMOF 还可用于创建本地化 MOF 文件 (.mfl) 。
语法
HRESULT CreateBMOF(
[in] LPWSTR TextFileName,
[in] LPWSTR BMOFFileName,
[in] LPWSTR ServerAndNamespace,
[in] LONG lOptionFlags,
[in] LONG lClassFlags,
[in] LONG lInstanceFlags,
[in, out] WBEM_COMPILE_STATUS_INFO *pInfo
);
参数
[in] TextFileName
要分析的文本文件的名称。
[in] BMOFFileName
二进制 MOF 文件: 要在其中存储生成的二进制 MOF 数据的文件的名称。
本地化的 MOF 文件: BMOFFileName 字符串必须包含以下逗号分隔值:
-
区域<设置>
指定区域设置信息。 此值必须以前面的逗号开头。 有关详细信息,请参阅 mofcomp 实用工具的 -ADMENDMENT 开关的说明。
-
n<filename.mof>
要在其中存储生成的二进制 MOF 数据的文件的名称。
-
l<filename.mfl>
要在其中存储生成的本地化 MOF 数据的文件的名称。
[in] ServerAndNamespace
默认命名空间的路径,在其中写入类或实例。
可以使用此参数指定远程计算机上的命名空间 (“\computer\root”,例如) 。 此值可能被 #pragma 命令重写,如果使用自动恢复,则不应使用此值。 如果参数值为 NULL,则本地计算机上的 root\default 命名空间为默认值。
[in] lOptionFlags
可以组合以下一个或多个标志。
WBEM_FLAG_CHECK_ONLY
仅执行语法检查。
WBEM_FLAT_CONSOLE_PRINT
将各种有用的消息发送到控制台。
WBEM_FLAG_WMI_CHECK
使用 WMIMOFCHK 程序对生成的二进制 MOF 文件执行其他检查,该程序是Windows SDK WMI 部分的一部分。
[in] lClassFlags
控制类的创建的标志。 参数值可以是 0,也可以是以下标志的组合。
WBEM_FLAG_UPDATE_ONLY
阻止创建类。
可以将此标志与 WBEM_FLAG_UPDATE_SAFE_MODE 或 WBEM_FLAG_UPDATE_FORCE_MODE组合在一起。
WBEM_FLAG_CREATE_ONLY
仅允许创建类。
不能将其与其他标志组合使用。
WBEM_FLAG_UPDATE_SAFE_MODE
除非存在冲突,否则汇报 类。
可以将此标志与 WBEM_FLAG_UPDATE_ONLY合并。
WBEM_FLAG_UPDATE_FORCE_MODE
汇报并尽可能解决冲突。 使用强制模式更新静态类会导致删除该类的所有实例。 强制更新提供程序类不会删除类的实例。
可以将此标志与 lInstanceFlags 组合使用。
[in] lInstanceFlags
控制实例创建的标志。
参数值可以是 0 或以下标志之一。
WBEM_FLAG_UPDATE_ONLY
仅允许更新。
WBEM_FLAG_CREATE_ONLY
仅允许新实例。
[in, out] pInfo
指向描述错误的 WBEM_COMPILE_STATUS_INFO 的指针。
如果参数值不为 NULL,则表示发生了错误,并且结构中填充了错误信息。
返回值
如果成功,此方法将返回 WBEM_S_NO_ERROR 。 如果该方法不成功,则返回 WBEM_S_FALSE。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista |
最低受支持的服务器 | Windows Server 2008 |
目标平台 | Windows |
标头 | wbemcli.h (包括 Wbemidl.h) |
Library | Wbemuuid.lib |
DLL | Mofd.dll |