Skip to main content
Windows Automation API: UI Automation

Microsoft UI Automation is an accessibility framework that enables Microsoft Windows applications to provide and consume programmatic information about user interfaces (UIs). It provides programmatic access to most UI elements on the desktop. It enables assistive technology products, such as screen readers, to provide information about the UI to end users and to manipulate the UI by means other than standard input. UI Automation also allows automated test scripts to interact with the UI.

Where Applicable

By using UI Automation and following accessible design practices, developers can make applications running on Windows more accessible to many people with vision, hearing, or motion disabilities. Also, UI Automation is specifically designed to provide robust functionality for automated testing scenarios.

Developer Audience

UI Automation is designed for experienced C/C++ developers. In general, developers need a moderate level of understanding about COM objects and interfaces, Unicode, and Windows API programming.

For information about UI Automation for managed code, please see Accessibility in the Windows Presentation Foundation section of the Windows SDK.

Run-Time Requirements

UI Automation is supported on the following operating systems: Windows XP, Windows Server 2003, Windows Server 2003 R2, Windows Vista, Windows 7, Windows Server 2008, and Windows Server 2008 R2.

Note  Windows XP and Windows Server 2003 also require Microsoft .NET Framework 3.0.

In This Section

TopicDescription
OverviewsExplains the key concepts of UI Automation, describes the UI Automation API, and explains how to use the API to implement UI Automation providers and clients.
ReferenceContains detailed reference information about the UI Automation API.
SamplesProvides details about the code samples that support the UI Automation documentation.
AppendixProvides supplemental information about UI Automation.