Provider::GetObject (ParsedObjectPath*,MethodContext*,long) method (provider.h)
[提供者類別是 WMI 提供者 架構的一部分,現在被視為最終狀態,而且不會針對影響這些連結庫的非安全性相關問題使用進一步的開發、增強功能或更新。 MI API 應該用於所有新的開發。]
GetObject 方法是由 WMI 呼叫,以擷取類別的實例。
語法
HRESULT GetObject(
ParsedObjectPath *pParsedObjectPath,
MethodContext *pContext,
[ref] long lFlags
);
參數
pParsedObjectPath
要由架構提供者填入之 CInstance 物件的指標。
pContext
具有 GetObject 作業相關信息的旗標位掩碼。 這是 IWbemServices::GetObject 方法中用戶端所指定的值。
下列旗標是由 WMI 處理 (並篩選掉) :
- WBEM_FLAG_USE_AMENDED_QUALIFIERS
- WBEM_FLAG_RETURN_WBEM_COMPLETE
- WBEM_FLAG_RETURN_IMMEDIATELY
[ref] lFlags
查詢物件,指出要填入的屬性集,如 呼叫 Provider::GetObject 所要求。
提供者只要填入這些要求的屬性值,即可實現顯著的效能提升。 提供者會決定使用 CFrameworkQuery::IsPropertyRequired 要求哪些屬性。 否則,提供者必須填入所有屬性值。
傳回值
此方法的默認架構提供者實作會將 WBEM_E_PROVIDER_NOT_CAPABLE 傳回給呼叫方法。 IWbemServices::GetObject 方法會列出常見的傳回值,不過您可以選擇實作任何 COM 傳回值。
備註
WMI 通常會叫用 GetObject ,以回應 IWbemServices::GetObject 的用戶端呼叫。 Provider::GetObject 的 WMI 版本只提供填入索引鍵屬性的實例。 相反地,實作的架構提供者必須填入所有其他屬性。 下列描述 GetObject 的常見覆寫:
- 使用 CInstance 的 Get 方法讀取索引鍵屬性,例如 CInstance::GetCHString,以判斷要求哪些實例 WMI。
- 使用 CInstance 類別的許多 Set 方法填入實例的其餘屬性,例如 CInstance::SetByte 或 CInstance::SetStringArray。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | provider.h (include FwCommon.h) |
程式庫 | FrameDyn.lib |
Dll | FrameDynOS.dll;FrameDyn.dll |