다음을 통해 공유


UiaDisconnectProvider 함수(uiautomationcoreapi.h)

특정 공급자가 Microsoft UI 자동화 개체에 보유하는 모든 참조를 해제합니다.

구문

HRESULT UiaDisconnectProvider(
  [in] IRawElementProviderSimple *pProvider
);

매개 변수

[in] pProvider

형식: IRawElementProviderSimple*

연결이 끊어질 공급자입니다.

반환 값

형식: HRESULT

이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

공급자는 이 함수를 호출하여 제거된 UI 요소와 연결된 UI 자동화 리소스를 클린 합니다. 함수가 반환된 후 UI 요소와 연결된 DLL을 안전하게 언로드할 수 있습니다.

이 함수가 반환되면 연결이 끊긴 공급자와 연결된 모든 클라이언트 요청은 UIA_E_ELEMENTNOTAVAILABLE 오류 코드를 받습니다.

SendMessage 함수 호출에 대한 응답으로 이 함수를 호출할 수 없습니다. 애플리케이션은 SendMessage 호출에 대한 응답으로 COM(아웃바운드 구성 요소 개체 모델) 호출을 수행할 수 없으며 공급자 해제는 일반적으로 아웃바운드 COM 호출입니다. UiaDisconnectProvider 함수는 SendMessage 호출에 대한 응답으로 함수가 호출되면 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

추가 정보

공급자에 대한 함수

UiaDisconnectAllProviders