勇芳软件工作室.汉化:  Windows Management Instrumentation > COM API for WMI > Interfaces > IMofCompiler >

CreateBMOF Method

Previous pageReturn to chapter overviewNext page

描述

 

IMofCompiler.CreateBMOF方法创建二进制MOF文件。文件创建通过解析常规MOF文件并将类和实例的二进制表示存储为特殊文件格式来实现。通常,该数据二进制大对象(BLOB)被作为资源存储在可执行文件中,这可以随后被提取用于调用CompileBuffer方法。

 

C++ 语法

 

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

);

 

PowerBASIC 语法

 

METHOD CreateBMOF ( _

BYVAL TextFileName AS WSTRINGZ PTR, _

BYVAL BMOFFileName AS WSTRINGZ PTR, _

BYVAL ServerAndNamespace AS WSTRINGZ PTR, _

BYVAL lOptionFlags AS LONG, _

BYVAL lClassFlags AS LONG, _

BYVAL lInstanceFlags AS LONG, _

BYREF pInfo AS LONG _

) AS LONG

 

参数

 

TextFileName

 

要解析的文本文件的名称。

 

BMOFFileName

 

要存储生成的二进制MOF数据的文件的名称。

 

ServerAndNamespace

 

默认命名空间的路径,其中写入了类或实例。

 

您可以使用此参数在远程计算机上指定命名空间(例如\\\\ computer \\ root)。该值可能被的#pragma命令覆盖,如果使用自动恢复,则不应使用此值。如果参数值为NULL,则本地计算机上的root \\ default命名空间是默认值。

 

lOptionFlags

 

您可以组合一个或多个以下标志。

 

含义

WBEM_FLAG_CHECK_ONLY

只执行语法检查。

WBEM_FLAG_CONSOLE_PRINT

向控制台发送各种有用的消息。

WBEM_FLAG_WMI_CHECK

使用WMIMOFCHK程序对Windows生成的二进制MOF文件执行附加检查,该程序是Windows SDK的WMI部分的一部分。

 

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

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

 

您可以将此标志与llnstanceFlags组合。

 

lInstanceFlags

 

控制实例创建的标志。

 

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

 

含义

WBEM_FLAG_UPDATE_ONLY

只允许更新。

WBEM_FLAG_CREATE_ONLY

仅允许新实例。

 

pInfo

 

指向“C”型结构的指针WBEM_COMPILE_STATUS_INFO。

 

如果值不是NULL,则发生错误,并且使用错误信息填充结构。

 

TYPE WBEM_COMPILE_STATUS_INFO

 lPhaseError AS LONG    ' long lPhaseError

 hRes        AS LONG    ' HRESULT hRes

 ObjectNum   AS LONG    ' long ObjectNum

 FirstLine   AS LONG    ' long FirstLine

 LastLine    AS LONG    ' long LastLine

 dwOutFlags  AS DWORD   ' DWORD dwOutFlags

END TYPE

 

注意ObjectNumFirstLineLastLine仅包含与文件中特定类或实例相关的错误的值。

 

返回值

 

如果成功,此方法返回WBEM_S_NO_ERROR。如果方法不成功,则返回WBEM_S_FALSE。

 

备注

 

如果用户参数的形式为<域\\用户>,则权威参数必须为NULL。

 

要求

 

客户

需要Windows Vista,Windows XP,Windows 2000 Professional,Windows NT Workstation 4.0 SP4及更高版本,Windows Me,Windows 98或Windows 95。

服务器

需要Windows Server 2008,Windows Server 2003,Windows 2000 Server或Windows NT Server 4.0 SP4及更高版本。

在Wbemcli.inc中声明。

DLL

需要Mofd.dll。