適用於 WMI 的 COM API
您可以使用 WMI 元件物件模型 (COM) API 來撰寫管理用戶端應用程式,或建立新的 WMI 提供者。 COM API 參考提供進階系統管理員的資訊,以及撰寫用戶端和提供者應用程式的開發人員。
如需撰寫 WMI 企業管理應用程式的詳細資訊,請參閱 使用 C++建立 WMI 應用程式。 如需如何撰寫 WMI 提供者的詳細資訊,請參閱 將資料提供給 WMI。
注意
WMI 僅支援使用 Microsoft Visual C++ 6.0 版和更新版本的開發系統進行C++開發。 不過,您也可以使用其他編譯程式,例如來自 Borland 和 Watcom 的編譯程式。
每個不同的 WMI 對象都繼承自介面,最終繼承自 IUnknown介面。 COM 會指示物件實作者或介面如何處理記憶體管理、參數管理和多線程等工作。 藉由符合 COM,適用於 WMI 的 COM API 可確保它支援每個 WMI 物件的介面所提供的功能。
WMI 是透過下列 WMI 特定的 COM 介面來存取。
介面 | 描述 |
---|---|
IEnumWbemClassObject | 與 IWbemClassObject 類型物件搭配使用的列舉值。 它類似於標準 COM 列舉值,例如 IEnumVariant。 |
IMofCompiler | 此介面由 Mofd.dll實作,提供MOF編譯程式所使用的 COM 介面,以及編譯MOF檔案的任何其他應用程式。 |
IUnsecuredApartment | 用來簡化從客戶端進程進行異步呼叫的程式。 |
IWbemBackupRestore | 備份和還原 WMI 存放庫的內容。 |
IWbemCallResult | 用於 IWbemServices介面 呼叫。 進行這類呼叫時,呼叫 IWbemServices 方法會立即傳回,以及 IWbemCallResult 物件。 |
IWbemCausalityAnalysis | 追蹤從父要求產生的子要求。 |
IWbemClassObject | 包含和作類別定義和類別物件實例。 開發人員不需要實作此介面;WMI 提供其實作。 |
IWbemConfigureRefresher | 用戶端程式代碼用來將列舉值、物件和巢狀重新整理器新增或移除至重新整理器。 |
IWbemContext | 選擇性地在提交 IWbemServices 呼叫 Windows Management 時,用來將其他內容資訊傳達給提供者。 |
IWbemDecoupledBasicEventProvider | 向 WMI 註冊分離的提供者。 |
IWbemDecoupledRegistrar | 將分離的提供者與 WMI 產生關聯。 此介面可讓進程裝載的提供者定義介面的互作性存留期,並與其他提供者共存。 |
IWbemEventConsumerProvider | 提供事件取用者提供者的主要介面。 透過這個介面和 FindConsumer 方法,事件取用者提供者可以指出哪些事件取用者應該接收指定的事件。 |
IWbemEventProvider | 用來起始與事件提供者的通訊。 |
IWbemEventProviderQuerySink | 選擇性地由想要知道目前作用中的事件查詢篩選類型的事件提供者實作,以將效能優化。 |
IWbemEventProviderSecurity | 選擇性地由想要限制取用者存取其事件的事件提供者實作。 |
IWbemEventSink | 使用一組受限的查詢,起始與事件提供者的通訊。 此介面會擴充 IWbemObjectSink,以提供處理安全性和效能的新方法。 |
IWbemHiPerfProvider | 可讓提供者提供可重新整理的物件和列舉值。 |
IWbemHiPerfEnum | 用於重新整理作業,以提供實例物件的列舉快速存取。 |
IWbemLocator | 取得特定主計算機上 WMI IWbemServices 介面的初始命名空間指標。 |
IWbemObjectAccess | 提供物件的方法和屬性的存取權。 IWbemObjectAccess 對像是 重新整理器更新之實例的容器。 |
IWbemObjectSink | 用來接收 IWbemServices 和特定類型的事件通知結果。 |
IWbemObjectTextSrc | 用來將 IWbemClassObject 實例轉譯為不同的文字格式。 |
IWbemPropertyProvider | 支援在 WMI 類別的實例中擷取和更新個別屬性。 |
IWbemProviderIdentity | 如果提供者使用多個 名稱(多個 __Win32Provider實例)來註冊本身,且具有相同 CLSID 值,則由事件提供者實作。 類別會提供一個機制來區分應該使用哪一個具名提供者。 |
IWbemProviderInit | 用來初始化提供者。 |
IWbemProviderInitSink | 由 WMI 實作,並由提供者呼叫以報告初始化狀態。 |
IWbemQualifierSet | 做為單一屬性或整個物件之整組具名限定符的容器(類別或實例)。 |
IWbemQuery | 提供可剖析 WMI 查詢語言 (WQL) 查詢的進入點。 |
IWbemRefresher | 提供可重新整理物件,例如列舉值或重新整理器物件等可重新整理的進入點。 |
IWbemServices | 用戶端和提供者用來存取 WMI 服務。 介面只會由 WMI 實作,而且是主要 WMI 介面。 |
IWbemStatusCodeText | 擷取錯誤碼的文字字串描述,或發生錯誤的子系統名稱。 |
IWbemUnboundObjectSink | 由所有邏輯事件取用者實作。 這是接受事件對象傳遞的簡單接收介面。 |
如需下列 COM 程式設計主題的詳細資訊,請參閱 元件開發:
相關主題