다음을 통해 공유


프록시 개체란?

프록시 개체는 클라이언트와 액세스 가능한 개체 간의 중개자 역할을 합니다. 프록시 개체의 목적은 액세스 가능한 개체의 수명 범위를 모니터링하고 삭제되지 않은 경우에만 액세스 가능한 개체에 대한 호출을 전달하는 것입니다.

클라이언트가 IAccessible 속성을 호출하여 개체에 대한 정보를 가져올 때 프록시 개체는 액세스 가능한 개체를 계속 사용할 수 있는지 여부를 검사 합니다. 이 경우 프록시 개체는 클라이언트의 요청을 액세스 가능한 개체에 전달합니다. 액세스 가능한 개체가 제거되면(예: 사용자 지정 컨트롤이 있는 대화 상자가 닫힌 경우) 프록시 개체는 오류를 반환합니다. 개체가 삭제되었음을 나타내려면 서버에서 CoDisconnectObject를 호출한 후 COM(구성 요소 개체 모델)에서 이 오류가 반환되므로 서버에서 오류 코드 CO_E_OBJNOTCONNECTED 반환하는 것이 좋습니다.

프록시 개체는 클라이언트에 투명합니다. 클라이언트가 AccessibleObjectFromEvent, AccessibleObjectFromPoint 또는 AccessibleObjectFromWindow를 호출하면 IAccessible 인터페이스에 대한 포인터를 다시 받습니다. 그러나 클라이언트가 이 포인터를 사용하여 IAccessible 속성 또는 메서드를 호출하는 경우 실행되는 코드는 프록시 개체 내에 있습니다.