IMofCompiler::CompileFile 方法 (wbemcli.h)

IMofCompiler::CompileFile 方法编译 MOF 文件 (包括二进制 MOF) ,并将信息存储在 WMI 存储库中。 此方法执行与 Mofcomp 命令相同的操作。

语法

HRESULT CompileFile(
  [in]      LPWSTR                   FileName,
  [in]      LPWSTR                   ServerAndNamespace,
  [in]      LPWSTR                   User,
  [in]      LPWSTR                   Authority,
  [in]      LPWSTR                   Password,
  [in]      LONG                     lOptionFlags,
  [in]      LONG                     lClassFlags,
  [in]      LONG                     lInstanceFlags,
  [in, out] WBEM_COMPILE_STATUS_INFO *pInfo
);

参数

[in] FileName

要编译的文件的名称。

[in] ServerAndNamespace

写入任何类或实例的默认命名空间的路径。

可以在远程计算机上 (“\computer\root”指定命名空间,例如) 。 此值可由 #pragma 命令重写,如果需要自动恢复,则不应使用此值。 如果 为 NULL,则本地计算机上的 root\default 命名空间为默认值。

[in] User

一个 值,该值指定用于在远程计算机上编译的凭据。 如果值为 NULL,则用户上下文是调用进程使用的任何内容。 连接到本地计算机时,始终忽略这一点。 有关详细信息,请参见“备注”部分。

[in] Authority

一个 值,该值指定用于在远程计算机上进行编译的凭据。 如果值为 NULL,则授权上下文是调用进程使用的任何内容。 连接到本地计算机时,始终忽略这一点。 有关详细信息,请参见“备注”部分。

[in] Password

一个 值,该值指定用于在远程计算机上进行编译的凭据。 如果值为 NULL,则使用当前上下文的密码。 连接到本地计算机时,始终忽略这一点。

[in] lOptionFlags

一个参数,当使用 CompileFile 方法时,启用以下一个或多个标志的组合。

WBEM_FLAG_CHECK_ONLY

仅执行语法检查。

WBEM_FLAG_AUTORECOVER

如果方法成功,请将文件的名称添加到自动数据库恢复期间要编译的文件列表中。

请注意,此标志不能与命名空间、类或实例标志组合使用。

WBEM_FLAG_CONSOLE_PRINT

将各种有用消息发送到控制台。

WBEM_FLAG_DONT_ADD_TO_LIST

防止将文件添加到自动数据库恢复期间编译的文件列表中。

此标志与 WBEM_FLAG_AUTORECOVER 不兼容。

[in] lClassFlags

控制类的创建的标志。

参数可以是 0,也可以是以下值的组合。

WBEM_FLAG_UPDATE_ONLY

阻止创建类。

可以将此标志与 WBEM_FLAG_UPDATE_SAFE_MODEWBEM_FLAG_UPDATE_FORCE_MODE结合使用。

WBEM_FLAG_CREATE_ONLY

仅允许创建类。

不能将此标志与其他标志组合使用。

WBEM_FLAG_UPDATE_SAFE_MODE

除非存在冲突,否则汇报 类。

可以将此标志与 WBEM_FLAG_UPDATE_ONLY组合在一起。

WBEM_FLAG_UPDATE_FORCE_MODE

汇报并尽可能解决冲突。 使用强制模式更新静态类会导致删除该类的所有实例。 对提供程序类强制更新不会删除类的实例。

可以将此标志与 llnstanceFlags 组合在一起。

[in] lInstanceFlags

控制实例创建的标志。

参数值可以是 0 或以下标志之一。

WBEM_FLAG_UPDATE_ONLY

仅允许更新。

WBEM_FLAG_CREATE_ONLY

仅允许新实例。

[in, out] pInfo

指向描述错误的 WBEM_COMPILE_STATUS_INFO 的指针。

如果参数值不为 NULL,则表示发生了错误,并且结构中填充了错误信息。

返回值

此方法可以返回其中一个值。

2

不存在 #pragma 自动恢复 语句的警告。 此语句应是 MOF 文件的第一行之一。

注解

如果 User 参数采用 domain\user> 的形式<,则 Authority 参数必须为 NULL

要求

   
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 wbemcli.h (包括 Wbemidl.h)
Library Wbemuuid.lib
DLL Mofd.dll

另请参阅

IMofCompiler

WBEM_CHANGE_FLAG_TYPE

WBEM_COMPILER_OPTIONS

mofcomp