What is MSAA?

In order for assistive technologies (AT) to convey meaningful information to users about an application's user interface, the AT first must be able to access that information from the application. Microsoft's solution to this problem is Microsoft® Active Accessibility® (MSAA), which has been available as an add-on since Windows® 95 and built into subsequent Windows® releases. MSAA is a technology that provides a standard, consistent mechanism for exchanging information between applications and assistive technologies. For example, MSAA allows applications to expose screen readers to the type, name, location, and current state of all objects and notifies screen readers of any Windows event that leads to a user interface change.

Although it is not the only way for an application to communicate with assistive technology, MSAA allows AT developers to support a broader variety of applications without custom programming for each one. The number of applications that support MSAA is growing, although there still are many popular applications that do not support it.

Microsoft Active Accessibility: Architecture presents the basic Active Accessibility architecture and spells out Active Accessibility Server Requirements.

Microsoft has developed a suite of tools that allows users to see the information that MSAA is exposing. Although these tools are intended for developers, they may be of interest to technical users as well. The suite, called Microsoft Active Accessibility 2.0 Software Development Kit Tools, includes the following three programs: Accessible Event Watcher, Accessible Explorer, and Inspect Objects.

With the release of Windows Vista, Microsoft unveiled a new accessibility model called UI Automation, which offers improvements over MSAA. The MSDN article UI Automation and Microsoft Active Accessibility provides information about the differences between the two.

A New Accessibility Model

Microsoft has signaled MSAA as no longer being the standard for making applications accessible. On Microsoft's Developer Network site, the software company announced:

"Microsoft Active Accessibility was the earlier solution for making applications accessible. Microsoft UI Automation is the new accessibility model for Microsoft Windows and is intended to address the needs of assistive technology products and automated testing tools. UI Automation offers many improvements over Active Accessibility."

Learn more about Microsoft UI Automation at Microsoft's MSDN site under the article UI Automation and Microsoft Active Accessibility.