Exposing Additional Information Not Covered by IAccessible Interface

Depending on their products, server developers might need to expose information or functionality in addition to Active Accessibility support. If this is the case, work with assistive technology vendors (clients) to ensure that they add support for the features.

Do not attempt to extend the IAccessible interface. Interfaces cannot be changed once they are published. To expose additional information, use a custom interface and expose it by using one of the following techniques:

Note that the goal of the IAccessible interface is to have a well-defined interface that is used by servers and clients. Before exposing custom interfaces, be sure to expose as much information as possible through IAccessible.

You cannot use QueryInterface to expose custom interfaces. Use QueryService as outlined in the following procedures.