[提供者類別是 WMI 提供者 架構的一部分,現在被視為最終狀態,而且不會針對影響這些連結庫的非安全性相關問題使用進一步的開發、增強功能或更新。 MI API 應該用於所有新的開發。]
Provider 類別是架構提供者所支援的類別或類別的基類。 Provider 類別會封裝 IWbemServices 方法的實作,並包含數個協助程式函式。 架構提供者會針對它支援的每個功能覆寫 Provider 類別的其中一個方法。 例如,支持查詢處理的提供者會覆寫 Provider::ExecQuery 方法。
系統會為每個具有架構提供者的 WMI 類別建立 Provider 類別的實例。
提供者 具有下列類型的成員:
| 方法 | Description |
|---|---|
| 提交 | 將目前的實例傳回至 WMI。 |
| CreateNewInstance | 配置新的 CInstance 物件,並傳回它的指標。 |
| DeleteInstance | 刪除實例。 由 WMI 呼叫。 |
| EnumerateInstances | 擷取架構提供者類別的所有實例。 由 WMI 呼叫。 |
| ExecMethod | 在類別或實例上叫用方法。 由 WMI 呼叫。 |
| ExecQuery | 處理 WMI 查詢語言 (WQL) 查詢。 由 WMI 呼叫。 |
| 清除 | 由提供者架構呼叫,以刪除提供者使用中的所有不必要的記憶體。 |
| GetLocalComputerName | 以 CHString 格式傳回電腦名稱的常數參考。 |
| GetLocalInstancePath | 嘗試建置指定實例的完整對象路徑。 |
| GetObject | 擷取 類別的實例。 由 WMI 呼叫。 |
| GetProviderName | 擷取提供者的名稱。 |
| MakeLocalPath | 從相對路徑建置完整的實例路徑。 |
| PutInstance | 匯報 實例。 由 WMI 呼叫。 |
| SetCreationClassName | 將指定實例的 CreationClassName 字串屬性設定為此提供者的名稱。 |
| ValidateDeletionFlags | 判斷一組旗標是否對刪除作業有效。 |
| ValidateEnumerationFlags | 判斷一組旗標是否對列舉有效。 |
| ValidateFlags | 判斷一組旗標是否有效。 |
| ValidateGetObjFlags | 判斷一組旗標是否對實例擷取作業有效。 |
| ValidateMethodFlags | 判斷一組旗標是否對執行方法作業有效。 |
| ValidatePutInstanceFlags | 判斷一組旗標是否對實例更新作業有效。 |
| ValidateQueryFlags | 判斷一組旗標是否對查詢作業有效。 |
繼承
Provider 類別會實作 CThreadBase。
方法
Provider 類別具有這些方法。
|
Provider::~Provider Provider::~Provider 函式是 Provider 類別的解構函式。 |
|
Provider::Commit Commit 方法可用來將實例傳送至 WMI。 此方法是協助程式函式,不應覆寫。 |
|
Provider::CreateNewInstance CreateNewInstance 方法會配置新的 CInstance 物件,並傳回它的指標。 |
|
Provider::D eleteInstance WMI 會呼叫 DeleteInstance 方法來刪除實例。 (多載 2/2) |
|
Provider::D eleteInstance WMI 會呼叫 DeleteInstance 方法來刪除實例。 (多載 1/2) |
|
Provider::EnumerateInstances WMI 會呼叫 EnumerateInstances 方法,以擷取架構提供者類別的所有實例。 |
|
Provider::ExecMethod ExecMethod 方法是由 WMI 呼叫,以在類別或實例上叫用方法。 (多載 1/2) |
|
Provider::ExecMethod ExecMethod 方法是由 WMI 呼叫,以在類別或實例上叫用方法。 (多載 2/2) |
|
Provider::ExecQuery ExecQuery 方法是由 WMI 呼叫,以處理 WMI 查詢語言 (WQL) 查詢。 |
|
Provider::Flush Flush 方法是由提供者架構呼叫,以刪除提供者使用中的所有不必要的記憶體。 |
|
Provider::GetLocalComputerName GetLocalComputerName 方法會以 CHString 格式傳回電腦名稱的常數參考。 |
|
Provider::GetLocalInstancePath GetLocalInstancePath 方法會嘗試建置指定實例的完整對象路徑。 此方法是協助程式函式,不應覆寫。 |
|
Provider::GetNamespace GetNamespace 方法會以 CHString 格式傳回命名空間名稱的常數參考。 傳回的名稱是最初提供給提供者建構函式的第二個參數。 |
|
Provider::GetObject WMI 會呼叫 GetObject 方法,以擷取類別的實例。 (多載 1/3) |
|
Provider::GetObject WMI 會呼叫 GetObject 方法,以擷取類別的實例。 (多載 2/3) |
|
Provider::GetObject WMI 會呼叫 GetObject 方法,以擷取類別的實例。 (多載 3/3) |
|
Provider::GetProviderName GetProviderName 方法會擷取提供者建構函式中使用的類別名稱。 |
|
Provider::MakeLocalPath MakeLocalPath 方法會從相對路徑建置完整的實例路徑。 |
|
Provider::P rovider Provider 方法會建立提供者的實例。 這個方法是 WMI 提供者架構的一部分。 |
|
Provider::P utInstance PutInstance 方法會更新 實例。 (多載 2/2) |
|
Provider::P utInstance PutInstance 方法會更新 實例。 (多載 1/2) |
|
Provider::SetCreationClassName SetCreationClassName 方法會將指定實例的 CreationClassName 字串屬性設定為此提供者的名稱。 |
|
Provider::ValidateDeletionFlags ValidateDeletionFlags 方法會判斷一組旗標是否對刪除作業有效。 |
|
Provider::ValidateEnumerationFlags ValidateEnumerationFlags 方法會判斷一組旗標是否對列舉有效。 |
|
Provider::ValidateFlags ValidateFlags 方法會判斷一組旗標是否有效。 |
|
Provider::ValidateGetObjFlags ValidateGetObjFlags 方法會判斷一組旗標是否對實例擷取作業有效。 |
|
Provider::ValidateMethodFlags ValidateMethodFlags 方法會判斷一組旗標是否對執行方法作業有效。 |
|
Provider::ValidatePutInstanceFlags ValidatePutInstanceFlags 方法會判斷一組旗標是否對實例更新作業有效。 |
|
Provider::ValidateQueryFlags ValidateQueryFlags 方法會判斷一組旗標是否對查詢作業有效。 |
備註
這個類別的解構函式為 Provider::~Provider。
規格需求
| 需求 | 值 |
|---|---|
| 最低支援的用戶端 | Windows Vista |
| 最低支援的伺服器 | Windows Server 2008 |
| 目標平台 | Windows |
| 標頭 | provider.h (include FwCommon.h) |