Microsoft Active Accessibility
Microsoft Active Accessibility (англ. буквально «Активная доступность от Microsoft», где accessibility обозначает доступность для людей с ограниченными возможностями здоровья, и название соотв. раздела в меню операционных систем обычно переводится как «Специальные возможности»)— компоненты операционной системы Microsoft Windows на основе технологии COM, предоставляющие программный доступ к средствам облегчения работы на компьютере для людей с проблемами со здоровьем (англ. assistive technologies «ассистивные технологии», рус. технические средства реабилитации инвалидов).
История
MSAA был первоначально сделан в апреле 1997 года в форме Re-Distributable Kit (RDK), которая включала обновление компонентов операционной системы для Microsoft Windows 95. MSAA была встроена во все версии платформы Windows, и получила периодическое обновление и исправлений с течением времени.
Программная экспозиция доступа приложений на базе Windows, традиционно была предоставлена через MSAA. Однако новые приложения в настоящее время используют Microsoft UI Automation (UIA) которая была введена c Windows Vista и .NET Framework 3.0.
История версий
Следующие версии Active Accessibility были выпущены[1]:
Версия | Описание |
---|---|
1.0 | Оригинальное дополнение выпуск для Windows 95. RDK поддерживалось только в английской версии операционной системы. (1997) |
1.1 | Включено в Windows 98. |
1.2.x | Первая редакция MSAA, была представлена на английских и международных версиях Windows. (1998) |
1.3.x | Дополнительно добавлена поддержка большего количества языков. Представленный спутниковый DLL (oleaccrc.dll) за свои международные библиотеки ресурсов текста. Позже компоненты системы были интегрированы в Windows NT 4.0 [Service Pack 6] и выше, Windows 98, Windows 2000 и Windows Me. (1999) |
2.0 | В первый серьёзный выпуск MSAA, добавили поддержку динамических заметок и MSAA Text. Эта версия была интегрирована в Windows XP. Незначительные изменения были внесены в рамках MSAA в последующих версиях Windows. Версии 2.0 RDK была предоставлена для старых платформ (Windows 95, 98, 2000, Me, NT) в 2003 году. (2000-2008) |
3.0 | Framework стал частью Windows Automation API 3.0, который был интегрирован доступ для платформы Windows API установленной в MSAA и UI Automation (МСА). Windows Automation API включен в Windows 7 и доступен для Windows Vista и XP (2009) |
Мотивация и цели
Мотивирующим фактором развития MSAA заключалась в предоставлении доступа и бесшовный коммуникационный механизм между основной операционной системы и приложений вспомогательных технологических продуктов.
Программной целью MSAA является предоставление Windows, управлять основной информацией такой как имя, расположение на экране, или тип управления и формулирование информации, таких как видимость, включение или выбор.
Технический обзор
MSAA основана на Component Object Model (COM). COM определяет механизм для приложений и операционных систем для связи.
На рисунке 1 показана архитектура верхнего уровня MSAA.
Приложения (например, текстовый процессор), называются серверами в MSAA потому что они обеспечивают либо обслуживают, информацию об их пользовательских интерфейсах (UI). Доступность инструментов (например, средства чтения с экрана), называются клиентами в MSAA, потому что они потребляют и взаимодействуют с UI информацией из приложения.
Система компонента MSAA framework, Oleacc.dll способствует коммуникациям между доступными средствами (клиентов) и приложений (сервера). Код границы указывает на программную границу между приложениями, которые предоставляет UI доступ к информации и доступными средствами, которые взаимодействуют с UI от имени пользователей. Граница может быть также процессом рубежа, когда MSAA клиента имеет собственный процесс.
Пользовательский интерфейс представлен в виде иерархии доступных объектов; изменения и действия представлены в виде WinEvents.
Роли, имена, значения, состояния
MSAA передает информацию, посылая небольшие куски информации об элементах программы вспомогательным объектом техники (АТ). Четыре критических фрагмента информации, на которую опирается AT, чтобы помочь пользователям взаимодействовать с приложениями являются ролью элемента, имя, значение и состояние:
- Роль: Передает пользователям через AT, тип объекта управления, такие как кнопки или стол.
- Имя: Обеспечивает метку для элементов, таких как кнопку Далее, которая перемещает пользователей к следующей странице либо Имя для поле ввода.
- Значение: Содержит значение указанного предмета, например, значение ползунка либо информацию в редактируемом текстовом поле.
- Состояния: Определяет текущее состояние управления, например, проверяется на флажки.
Microsoft предоставляет полный список элементов управления и их функции.
Роль
Роль информации в зависимости от типа интерфейса управления, с которыми разработчик хочет взаимодействовать. Например, если разработчик осуществляет кнопку, клики, разработчик выбирает Кнопку как Роль в реализации. В следующей таблице показан пример списка MSAA Ролей и их соответствующие описания.
Роль | Описание |
---|---|
ROLE_SYSTEM_APPLICATION | Указывает представление объектом основного окна приложения. |
ROLE_SYSTEM_BUTTONMENU | Указывает представление объектом кнопки, раскрывающей меню. |
ROLE_SYSTEM_CARET | Указывает представление объектом системного текстового курсора. |
ROLE_SYSTEM_DIALOG | Указывает представление объектом диалогового поля или поля сообщений. |
ROLE_SYSTEM_DOCUMENT | Указывает представление объектом окна документа. |
ROLE_SYSTEM_GRAPHIC | Указывает представление объектом изображения. |
ROLE_SYSTEM_LIST | Указывает представление объектом поля списка, где пользователь может выбрать один или более элементов. |
ROLE_SYSTEM_MENUBAR | Указывает представление объектом строки меню, обычно следующей за (под) строкой заголовка окна, в котором пользователь может выбирать меню. |
ROLE_SYSTEM_PROGRESSBAR | Указывает представление объектом индикатора выполнения, динамически отображающего процентное отношение выполнения текущей операции. |
ROLE_SYSTEM_PUSHBUTTON | Указывает представление объектом элемента управления нажимной кнопки. |
ROLE_SYSTEM_RADIOBUTTON | Указывает представление объектом кнопки выбора (также называемой переключателем). |
ROLE_SYSTEM_SCROLLBAR | Указывает представление объектом вертикальной или горизонтальной полосы прокрутки, которая может являться элементом области клиента или использоваться в элементе управления. |
ROLE_SYSTEM_TITLEBAR | Указывает представление объектом строки заголовка или подписи для окна. |
ROLE_SYSTEM_TOOLBAR | Указывает представление объектом панели инструментов, являющейся группой элементов управления, обеспечивающих быстрый доступ к часто используемым функциям. |
ROLE_SYSTEM_WINDOW | Указывает представление объектом рамки окна, обычно содержащей такие нижестоящие элементы, как строка заголовка, клиент и другие типичные объекты окна. |
Имя
Имена элементов в приложение включены в код разработчика. Многие объекты, такие как значки, меню, флажки, поля со списком, и другие элементы этикетки, которые отображаются для пользователей. Любой ярлык, который отображается для пользователей на управление (напр.-кнопка) используется по умолчанию для имени объекта недвижимости. Убедитесь, что Имя объекта имеет смысла для пользователя и описывает контроля надлежащим образом. Свойство Name не должны включать в себя контроль за роль или тип информации, как, например, кнопку или списка, или это будет конфликт с текстом из роли собственности (полученных от GetRoleText функция MSAA API).
Значение
Значение используется, когда разработчик хочет, чтобы возвратить информацию от объектов в виде строки. Значение может быть возвращена для объектов, где процент, целые числа, текстовой или визуальной информации, содержащейся в объекте. Например, значение имущества вернулся из прокрутки и след скользить доступные объекты могут указывать проценты в строки.
Не все объекты имеют Значение, возложенные на них.
Состояние
Состояние имущества описывает объект в состояние на момент времени. Microsoft Active Accessibility обеспечивает состояние объекта константы, определенных в oleacc.h, объединенных для идентификации состояния объекта. Если предопределенные значения состояния возвращаются, клиенты используют GetStateText для получения локализованных строк, описывающая состояние. Все объекты поддержки Состояние собственности.
Доступность
MSAA первоначально была доступна в качестве дополнения к Windows 95. Она была интегрирована для всех последующих версий Windows, вплоть и включается в Windows 7.
Примечания
- ↑ Supported Platforms: Active Accessibility - MSDN . Дата обращения: 27 сентября 2011. Архивировано 8 сентября 2010 года.