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_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合併。
[in] lInstanceFlags
控制實例建立的旗標。
參數值可以是 0 或下列其中一個旗標。
WBEM_FLAG_UPDATE_ONLY
只允許更新。
WBEM_FLAG_CREATE_ONLY
只允許新的實例。
[in, out] pInfo
描述錯誤的 WBEM_COMPILE_STATUS_INFO 指標。
如果參數值不是 Null,就會發生錯誤,而且結構會填入錯誤資訊。
傳回值
這個方法可以傳回其中一個值。
2
#pragma autorecover 語句不存在的警告。 此語句應該是 MOF 檔案的第一行。
備註
如果User參數的格式為 <domain\user> ,則 Authority參數必須是Null。
規格需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | wbemcli.h (包含 Wbemidl.h) |
程式庫 | Wbemuuid.lib |
Dll | Mofd.dll |