Microsoft UI Automation

At server side, UIAutomationCore.dll is injected into all or selected processes on the current desktop to perform data retrieval on behalf of a client.

The DLL can also load UIA plugins (called providers) into its host process to extract data using different techniques.

A set of interface definitions and functions that are implemented by managed UIA provider applications.

One of these properties is the control type, which defines its basic appearance and functionality as a single recognizable entity (e.g., a button or check box).

Control patterns also expose methods that enable clients to get further information about the element and to provide input.

The UIA tree is not a fixed structure and is seldom seen in its totality because it might contain thousands of elements.

These properties enable UIA client applications to discover information about pieces of the user interface (UI), especially controls, including both static and dynamic data.

UIA exposes the textual content, including format and style attributes, of text controls in UIA-supported platforms.

In turn, TextPattern requires the support of the TextPatternRange class to expose format and style attributes.

[5] Besides Windows platforms, the Olive project (which is a set of add-on libraries for the Mono core aiming for the .NET Framework support) includes a subset of WPF (PresentationFramework and WindowsBase) and UI Automation.

Additionally, the project provides a bridge to the Accessibility Toolkit (ATK) for Linux assistive technologies (ATs).

Novell is also working on a bridge for UIA-based ATs to interact with applications that implement ATK.

Frame
Frame