WbebemServices::ExecMethod 方法 (wbemcli.h)
IWbemServices::ExecMethod方法會執行 CIM 物件所匯出的方法。 方法呼叫會轉送到其執行所在的適當提供者。 資訊和狀態會傳回給呼叫端,直到呼叫完成為止。
方法不是由 Windows 管理直接實作,而是由方法提供者匯出。 對於任何指定的 CIM 類別,必須在有問題的提供者檔中指定可用的方法和其參數。
如需執行方法的詳細資訊,請參閱 呼叫方法。
語法
HRESULT ExecMethod(
[in] const BSTR strObjectPath,
[in] const BSTR strMethodName,
[in] long lFlags,
[in] IWbemContext *pCtx,
[in] IWbemClassObject *pInParams,
[out] IWbemClassObject **ppOutParams,
[out] IWbemCallResult **ppCallResult
);
參數
[in] strObjectPath
有效的 BSTR ,包含執行方法之 物件的物件路徑 。
[in] strMethodName
物件的方法名稱。
[in] lFlags
這個參數可以設定為 0,以便進行同步呼叫。 若要將此設為半同步呼叫,請將 lFlags 設定為 WBEM_FLAG_RETURN_IMMEDIATELY、提供 ppCallResult 參數的有效指標,並立即傳回此呼叫。 如需詳細資訊,請參閱 呼叫方法。
[in] pCtx
通常 為 Null;否則,這是執行 方法之提供者可能使用的 IWbemCoNtext 物件的指標。 內容物件中的值必須在有問題的提供者檔中指定。 如需此參數的詳細資訊,請參閱 呼叫 WMI。
[in] pInParams
如果不需要任何參數才能執行 方法,則可為 Null 。 否則,這會指向 IWbemClassObject ,其中包含做為方法執行輸入參數的屬性。 物件的內容是方法特定的,而且是有問題的提供者規格的一部分。 如需建構輸入參數的詳細資訊,請參閱 在 C++ 中建立 Parameters 物件。
[out] ppOutParams
如果不是 Null,則會收到輸出參數的指標,並傳回方法執行的值。 這個物件的內容是方法特定的,而且是有問題的提供者規格的一部分。 當不再需要時,呼叫端必須在傳回的物件上呼叫 Release 。
[out] ppCallResult
如果 為 Null,則不會使用這個值。 如果指定 ppCallResult ,則必須將其設定為在進入時指向 Null 。 在此情況下,呼叫會立即傳回 WBEM_S_NO_ERROR。 ppCallResult參數會收到新IWbemCallResult物件的指標,必須輪詢該物件,才能使用GetCallStatus方法取得方法執行的結果。 呼叫 IWbemCallResult::GetResultObject即可取得呼叫的 out 參數。
傳回值
這個方法會傳回 HRESULT ,指出方法呼叫的狀態。 下列清單列出 HRESULT中包含的值。
失敗時,您可以從 COM 函式 GetErrorInfo取得任何可用的資訊。
如果網路問題造成您遺失與 Windows 管理的遠端連線,也可能傳回 COM 特定的錯誤碼。
備註
如果ppOutParams不是Null,用戶端可以檢查ppOutParams所指向物件的ReturnValue屬性,以判斷方法的傳回數值型別。
規格需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | wbemcli.h (包含 Wbemidl.h) |
程式庫 | Wbemuuid.lib |
Dll | Fastprox.dll;Esscli.dll;FrameDyn.dll;FrameDynOS.dll;Ntevt.dll;Stdprov.dll;Viewprov.dll;Wbemcomn.dll;Wbemcore.dll;Wbemess.dll;Wbemsvc.dll;Wmipicmp.dll;Wmidcprv.dll;Wmipjobj.dll;Wmiprvsd.dll |