이 항목에서는 Microsoft Active Accessibility 및 Microsoft UI Automation의 아키텍처와 두 가지 기술을 기반으로 애플리케이션 간의 상호 운용성을 허용하는 구성 요소에 대해 간략하게 설명합니다.
Microsoft Active Accessibility 및 UI Automation 상호 운용성에 대한 자세한 내용은 Common Infrastructure참조하세요.
이 항목에는 다음 섹션이 포함되어 있습니다.
- Microsoft Active Accessibility Architecture
- UI 자동화 아키텍처
- Microsoft Active Accessibility 및 UI 자동화 상호 운용성
- IAccessibleEx 인터페이스
- 관련 항목
Microsoft Active Accessibility 아키텍처
Microsoft Active Accessibility는 컨트롤 이름, 화면의 위치 및 컨트롤 유형과 같은 컨트롤에 대한 기본 정보와 표시 유형 및 사용/사용 안 함 상태와 같은 상태 정보를 노출합니다. UI는 액세스 가능한 개체의 계층 구조로 표시됩니다. 변경 내용 및 동작은 WinEvents로 표시됩니다.
Microsoft Active Accessibility는 다음 구성 요소로 구성됩니다.
- 액세스 가능한 개체 - IAccessible COM(구성 요소 개체 모델) 인터페이스 및 ChildID(정수 자식 식별자)로 표현되는 논리 UI 요소(예: 단추)입니다.
- WinEvents - 액세스 가능한 개체가 변경되면 서버가 클라이언트에 알릴 수 있도록 하는 이벤트 시스템입니다. 자세한 내용은 WinEvents참조하세요.
- OLEACC.dll- Microsoft Active Accessibility API 및 접근성 시스템 프레임워크를 제공하는 런타임 동적 연결 라이브러리입니다. OLEACC는 사용자 컨트롤, 사용자 메뉴 및 일반 컨트롤을 포함하여 표준 UI 요소에 대한 기본 접근성 정보를 제공하는 프록시 개체를 구현합니다.
Microsoft Active Accessibility의 경우 OLEACC(접근성 프레임워크)의 시스템 구성 요소는 다음 그림과 같이 보조 기술(접근성 도구)과 애플리케이션 간의 통신을 지원합니다.
접근성 도구가 애플리케이션과 상호 작용하는 방법을 보여 주는
애플리케이션(Microsoft Active Accessibility Server)은 사용자를 대신하여 UI와 상호 작용하는 도구(Microsoft Active Accessibility 클라이언트)에 UI 접근성 정보를 제공합니다. 코드 경계는 프로그래밍 방식과 프로세스 경계입니다.
UI 자동화 아키텍처
UI 자동화를 사용하면 UI 자동화 핵심 구성 요소(UIAutomationCore.dll)가 접근성 도구와 애플리케이션 프로세스 모두에 로드됩니다. 핵심 구성 요소는 프로세스 간 통신을 관리하고, 속성 값별로 요소를 검색하는 것과 같은 더 높은 수준의 서비스를 제공하며, 속성을 대량으로 가져오거나 캐싱할 수 있으므로 Microsoft Active Accessibility 구현보다 성능이 향상됩니다.
UI 자동화에는 사용자 컨트롤, 사용자 메뉴 및 일반 컨트롤과 같은 표준 UI 요소에 대한 UI 정보를 제공하는 프록시 개체가 포함되어 있습니다. 또한 UI 자동화 클라이언트가 Microsoft Active Accessibility 서버에서 UI 정보를 가져올 수 있도록 하는 프록시도 포함되어 있습니다.
다음 그림에서는 접근성 도구(클라이언트) 및 애플리케이션(공급자)에서 사용되는 다양한 UI 자동화 구성 요소 간의 관계를 보여 줍니다.
접근성 도구의 구성 요소가 애플리케이션의 구성 요소와 상호 작용하는 방법을 보여 주는
Microsoft Active Accessibility 및 UI 자동화 상호 운용성
Microsoft Active Accessibility Bridge에 대한 UI 자동화를 사용하면 Microsoft Active Accessibility 클라이언트가 UI 자동화 개체 모델을 Microsoft Active Accessibility 개체 모델로 변환하여 UI 자동화 공급자에 액세스할 수 있습니다. 다음 그림에서는 UI 자동화-Microsoft Active Accessibility Bridge의 역할을 보여 줍니다.
접근성 도구 및 애플리케이션illustration showing how ui automation works with accessibility tools and applicationsUI 자동화가 작동하는 방식을 보여 주는그림
마찬가지로 Microsoft Active Accessibility-to-UI Automation 프록시는 UI 자동화 클라이언트에 대한 Microsoft Active Accessibility 기반 서버 개체 모델을 변환합니다. 다음 그림에서는 Microsoft Active Accessibility-to-UI Automation 프록시의 역할을 보여 줍니다.
접근성 도구 및 애플리케이션illustration showing how ui automation proxy works with accessibility tools and applicationsui 자동화 프록시가 작동하는 방식을 보여 주는그림
IAccessibleEx 인터페이스
IAccessibleEx 인터페이스를 사용하면 기존 애플리케이션 또는 UI 라이브러리가 구현을 처음부터 다시 작성하지 않고도 UI 자동화를 지원하도록 Microsoft Active Accessibility 개체 모델을 확장할 수 있습니다. IAccessibleEx 사용하면 UI 및 해당 기능을 완전히 설명하는 데 필요한 추가 UI 자동화 속성 및 컨트롤 패턴만 구현할 수 있습니다.
Microsoft Active Accessibility-to-UI Automation 프록시는 IAccessibleEx활성화된 Microsoft Active Accessibility 서버의 개체 모델을 UI 자동화 개체 모델로 변환하므로 UI 자동화 클라이언트는 추가 작업을 수행할 필요가 없습니다. IAccessibleEx 인터페이스를 사용하면 In-Process Microsoft Active Accessibility 클라이언트가 UI 자동화 공급자와 직접 상호 작용할 수도 있습니다.
자세한 내용은 IAccessibleEx 인터페이스참조하세요.
관련 항목
-
보조 기술 대한 보안 고려 사항