가. UI 자동화 기술 개요

간략하게 UI 자동화 기술을 살펴봅시다. UI 자동화 기술의 내부 모듈에는 공급자 API와 클라이언트 API, UI 자동화 핵심, UI 클라이언트 측 공급자 모듈이 있습니다. 다음은 MSDN에서 발췌한 UI 자동화 기술의 구성 요소입니다.

구성 요소DLL설명
공급자 APIUIAutomationProvider.dllUIAutomationTypes.dllUI 공급자에 의해 구현되는 인터페이스 집합
클라이언트 APIUIAutomationClient.dllUIAutomationTypes.dllUI 요소 정보를 가져오고 제어할 수 있게 제공하는 서비스 집합
UI 자동화 핵심UIAutomationCore.dll공급자와 클라이언트에서 사용하는 형식
UI 클라이언트 측 공급자UIAutomationClientsideProvider.dll표준 레거시 컨트롤에 대한 UI 자동화 공급자 집합

[표 3.1] UI 자동화 기술 구성 요소

UI 자동화 기술은 응용 프로그램 개발자가 접근성 높은 응용 프로그램을 제작하기 위해 필요한 공급자 API를 제공하고 있습니다. 그리고 응용 프로그램이 접근성이 있는지 평가하는 도구나 장애에 관계없이 응용 프로그램을 사용할 수 있는 보조 기술을 개발하기 위해 클라이언트 API를 제공하고 있습니다.

이 책에서는 응용 프로그램이 접근성이 있는지 평가하는 평가 도구를 만드는 방법을 주로 다룰 것이고 이에 따라 클라이언트 API 부분에 관한 설명이 주를 이룹니다.

UI 자동화 기술에서는 프로그램의 모든 UI 요소를 자동화 요소로 표현하고 있습니다.

UI 자동화 요소에는 위치, 값 등의 자동화 속성이 있습니다. 그리고 응용 프로그램의 동작에 따라 변화를 감지하기 위한 자동화 이벤트를 제공하고 있으며 UI 자동화 요소의 계층적으로 표현하여 빠르게 검색할 수 있는 자동화 트리를 제공합니다. 그리고 UI 자동화 요소는 컨트롤 종류에 따라 처리하기 위해 자동화 컨트롤 패턴을 제공합니다.

이번 장에서는 자동화 요소에 대해 자세히 살펴봅시다.