UiaDisconnectProvider 函式 (uiautomationcoreapi.h)
釋放特定提供者對 Microsoft 使用者介面自動化 物件保留的所有參考。
語法
HRESULT UiaDisconnectProvider(
[in] IRawElementProviderSimple *pProvider
);
參數
[in] pProvider
類型: IRawElementProviderSimple*
要中斷連線的提供者。
傳回值
類型: HRESULT
如果此函式成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
提供者應該呼叫此函式,以清除與已終結之 UI 元素相關聯的 使用者介面自動化 資源。 與 UI 元素相關聯的 DLL 可以在函式傳回之後安全地卸除。
在此函式傳回之後,與中斷連線提供者相關聯的所有用戶端要求都會收到錯誤碼 UIA_E_ELEMENTNOTAVAILABLE 。
無法呼叫此函式,以回應 SendMessage 函式的呼叫。 應用程式無法對 SendMessage 的呼叫進行輸出元件物件模型 (COM) 呼叫,而釋放提供者通常是輸出 COM 呼叫。 如果呼叫函式以回應 SendMessage 呼叫,UiaDisconnectProvider 函式會傳回RPC_E_CANTCALLOUT_ININPUTSYNCCALL。 您可以使用 InSendMessageEx 函式來判斷是否正在處理特定訊息,以回應 SendMessage 呼叫。
呼叫 UiaDisconnectProvider 的應用程式不應該傳回嘗試中斷連線之提供者的指標,以回應重新進入 WM_GETOBJECT 訊息。 如果應用程式嘗試中斷提供者的連線,但在中斷連線嘗試期間,使用該相同提供者呼叫 UiaReturnRawElementProvider 函式,提供者可能不會完全中斷連線。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2012 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | uiautomationcoreapi.h |
程式庫 | Uiautomationcore.lib |
Dll | Uiautomationcore.dll |