WinDDA

The WinDDA is targeted towards applications that are usually referenced as “Windows applications”, running directly on the Windows operating system. The key technologies use in the DDA is MSAA, with some functionality covered through Win32 function calls. Because of this the usability of the DDA depends on how an application supports MSAA, which applies to most of the common control libraries. The Microsoft Active Accessibility (MSAA) API allows you to automate user interface interactions. An application can use this API to make its interface more accessible to different users. While modifying a UI to make it more accessible to users is the primary intent of the API, it can also be used for CCF integration. Windows generates accessibility proxy objects for Windows controls that do not explicitly provide their own Active Accessibility support. The use of proxy objects provides an alternative to the more common approach of controlling an application through Windows API calls. It also allows you to control any application type (beyond Win32) that exposes its user interface through Active Accessibility.

Note

You cannot access some controls in a Windows application, if it contains an invalid accessibility node. This occurs due to limitations in the MSAA API. In such cases, you must extend the DDA with custom code to access the inaccessible controls.

The WinDDA consists of the following three key tags that are used to define a control:

  • <AccControl>: uses the IAccessible interface to access a control
  • <AccSelector>: uses the IAccessbile interface to access controls that allow multi-selection.
  • <Win32Control>: uses Win32 functions to access a control