共用方式為


撰寫實例提供者

實例提供者會提供一或多個指定類別的實例。 例如,實例提供者可以提供CPU或其他硬體類型的相關信息。 由於實例提供者所管理的物件通常會定期變更,因此所有實例提供者都會被視為提取提供者;也就是說,每當 WMI 提出資訊要求時,動態擷取 Managed 物件相關信息的提供者。 此名稱的由來是來自於 WMI 為回應用戶端的要求,從提供者「提取」資訊的概念。 使用提取技術,實例提供者可以支援特定實例的擷取、列舉、修改、刪除和查詢處理。

高效能提供者可以提升實例提供者的效率,或以程式設計方式存取出現在系統監視器中的數據。 如需詳細資訊,請參閱 將實例提供者變成 High-Performance 提供者

下列程序描述如何撰寫實例提供者。

若要寫入實例提供者

  1. 向 WMI註冊您的提供者。

    實例提供者會藉由建立 __Win32Provider 實例和 __InstanceProviderRegistration 類別,向WMI 註冊。

  2. 初始化您的提供者

    WMI 使用 IWbemProviderInit 來載入和初始化提供者。 這是所有提供者通用的工作。

    注意

    強烈建議實例提供者使用多線程模型 「Both」。。

     

  3. 為您的提供者實作 IWbemServices 介面

    IWbemServices 介面是實例提供者的主要介面。

  4. 新增您服務提供者所需的任何其他程式碼。

    在設計提供者時,您最可能需要調用 WMI 介面。 如需詳細資訊,請參閱 對 WMI 的呼叫

    擷取客戶端的資訊時,您可能需要存取該客戶端的安全性層級。 如需詳細資訊,請參閱 模擬用戶端

  5. 如有必要,實作高效能介面

    高效能介面會提高提供者對WMI要求做出回應的速度。

  6. 如有必要,實作部分實例更新的支援

    顧名思義,部分實例更新是僅用來更新實例部分的技術。 如需從用戶端呼叫部分實例的詳細資訊,請參閱 更新實例的一部分擷取 WMI 實例的一部分

  7. 以新的程式碼取代預先存在的提供者。

    如果您沒有預先存在的提供者可複製,則不需要執行此步驟。 如需詳細資訊,請參閱 更新提供者