Technical Overview
Figure 1 below shows the architecture of UIA. Applications such as word processing programs are called servers in Microsoft Active Accessibility (MSAA) and providers in UIA because they serve or provide information about their user interfaces (UI). Accessibility tools such as screen readers are called clients in both MSAA and UIA because they consume and interact with application UI information.
With UIA, the UIA Core component (UIAutomationCore.dll) is loaded into the processes of both the accessibility tools and applications. This component manages cross-process communication, and it also provides higher-level services, such as searching for elements by property values.
UIA has four main provider and client components, as shown in the following table.
Component | Description |
---|---|
UIAutomationCore (UIAutomationCore.dll and dependents) | The underlying code (sometimes called the UIA core) that handles communication between providers and clients. UI Automation Core also offers the provider and client API interfaces for unmanaged applications and clients; unmanaged applications (either clients or providers) do not require the managed assemblies listed below. |
Managed Provider API (UIAutomationProvider.dll and dependents) |
A set of interface definitions and functions that are implemented by managed UIA provider applications. Providers are objects that provide information about UI elements and respond to programmatic input. |
Managed Client API (UIAutomationClient.dll and dependents) | A set of interface definitions and functions for managed UIA client applications. |
UIAutomationClientsideProviders.dll | A set of UIA provider implementations for legacy Win32 controls and MSAA applications. This client-side provider is available to managed client applications by default. |
Read more about this topic: Microsoft UI Automation
Famous quotes containing the word technical:
“The axioms of physics translate the laws of ethics. Thus, the whole is greater than its part; reaction is equal to action; the smallest weight may be made to lift the greatest, the difference of weight being compensated by time; and many the like propositions, which have an ethical as well as physical sense. These propositions have a much more extensive and universal sense when applied to human life, than when confined to technical use.”
—Ralph Waldo Emerson (18031882)