Архитектура и взаимодействие
В этом разделе кратко описывается архитектура Microsoft Active Accessibility и службы автоматизации пользовательского интерфейса Майкрософт, а также компоненты, которые позволяют взаимодействовать между приложениями на основе двух различных технологий.
Дополнительные сведения о взаимодействии Microsoft Active Accessibility и автоматизации пользовательского интерфейса см. в разделе Common Infrastructure.
В этом разделе содержатся следующие разделы.
- архитектуры активных специальных возможностей Майкрософт
- архитектуры автоматизации пользовательского интерфейса
- microsoft Active Accessibility and UI Automation Interoperability
- интерфейс IAccessibleEx
- связанные разделы
Архитектура microsoft Active Accessibility
Microsoft Active Accessibility предоставляет основные сведения об элементах управления, таких как имя элемента управления, расположение на экране и тип элемента управления, а также сведения о состоянии, такие как видимость и состояние включения и отключения. Пользовательский интерфейс представлен как иерархия доступных объектов; изменения и действия представлены как WinEvents.
Microsoft Active Accessibility состоит из следующих компонентов:
- Доступный объект — логический элемент пользовательского интерфейса (например, кнопка), представленный интерфейсом IAccessible компонентной объектной модели (COM) и целым числом дочерним идентификатором (ChildID).
- WinEvents — система событий, которая позволяет серверам уведомлять клиентов о изменении доступных объектов. Дополнительные сведения см. в разделе WinEvents.
- OLEACC.dll— библиотека динамических ссылок, предоставляющая API читаемости Microsoft Active и системную платформу специальных возможностей. OLEACC реализует прокси-объекты, предоставляющие сведения о специальных возможностях по умолчанию для стандартных элементов пользовательского интерфейса, включая элементы управления USER, меню USER и общие элементы управления.
Для Microsoft Active Accessibility системный компонент платформы специальных возможностей (OLEACC) помогает обмен данными между вспомогательными технологиями (средствами специальных возможностей) и приложениями, как показано на следующем рисунке.
Приложения (серверы специальных возможностей Майкрософт) предоставляют сведения о специальных возможностях пользовательского интерфейса средствам (клиентам Microsoft Active Accessibility), которые взаимодействуют с пользовательским интерфейсом от имени пользователей. Граница кода — это программная и граничная граница процесса.
Архитектура автоматизации пользовательского интерфейса
С помощью службы автоматизации пользовательского интерфейса основной компонент автоматизации пользовательского интерфейса (UIAutomationCore.dll) загружается как в процессы специальных возможностей, так и в процессы приложений. Основной компонент управляет взаимодействием между процессами, предоставляет службы более высокого уровня, такие как поиск элементов по значениям свойств, и обеспечивает массовое получение или кэширование свойств, что обеспечивает лучшую производительность, чем реализация Microsoft Active Accessibility.
Автоматизация пользовательского интерфейса включает прокси-объекты, предоставляющие сведения о стандартных элементах пользовательского интерфейса, таких как элементы управления USER, меню USER и общие элементы управления. Он также включает прокси-серверы, позволяющие клиентам автоматизации пользовательского интерфейса получать сведения о пользовательском интерфейсе с серверов microsoft Active Accessibility.
На следующем рисунке показаны связи между различными компонентами автоматизации пользовательского интерфейса, используемыми в средствах специальных возможностей (клиентах) и в приложениях (поставщиках).
Взаимодействие с microsoft Active Специальные возможности и автоматизация пользовательского интерфейса
Служба автоматизации пользовательского интерфейса в мост microsoft Active Accessibility позволяет клиентам Microsoft Active Accessibility получать доступ к поставщикам автоматизации пользовательского интерфейса, преобразовав объектную модель автоматизации пользовательского интерфейса в объектную модель Microsoft Active Accessibility. На следующем рисунке показана роль моста автоматизации пользовательского интерфейса в Microsoft Active Accessibility Bridge.
Аналогичным образом microsoft Active Accessibility—to-UI Proxy преобразует объектные модели сервера на основе специальных возможностей Майкрософт для клиентов автоматизации пользовательского интерфейса. На следующем рисунке показана роль прокси-сервера службы "Специальные возможности Майкрософт"to-UI службы автоматизации.
Интерфейс IAccessibleEx
Интерфейс IAccessibleEx позволяет существующим приложениям или библиотекам пользовательского интерфейса расширить объектную модель Microsoft Active Accessibility для поддержки автоматизации пользовательского интерфейса без перезаписи реализации с нуля. С помощью IAccessibleExможно реализовать только дополнительные свойства автоматизации пользовательского интерфейса и шаблоны элементов управления, необходимые для полного описания пользовательского интерфейса и его функциональных возможностей.
Так как прокси-сервер службы автоматизации Microsoft Active Active —to-UI автоматизации преобразует объектные модели IAccessEx-включенные серверы Microsoft Active Accessibility в качестве объектных моделей автоматизации пользовательского интерфейса, клиенты автоматизации пользовательского интерфейса не должны выполнять дополнительную работу. Интерфейс IAccessEx также может включить в процессе клиенты Microsoft Active Accessibility для взаимодействия напрямую с поставщиками автоматизации пользовательского интерфейса.
Дополнительные сведения см. в интерфейсе IAccessibleEx.
Связанные разделы