다음을 통해 공유


프록시 개체란?

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

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

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