Partager via


Architecture et interopérabilité

Cette rubrique décrit brièvement l’architecture de Microsoft Active Accessibility et microsoft UI Automation, ainsi que les composants qui permettent l’interopérabilité entre les applications basées sur les deux technologies différentes.

Pour plus d’informations sur l’accessibilité active microsoft et l’interopérabilité UI Automation, consultez Infrastructure commune.

Cette rubrique contient les sections suivantes.

Architecture d’accessibilité active Microsoft

Microsoft Active Accessibility expose des informations de base sur les contrôles, telles que le nom du contrôle, l’emplacement à l’écran et le type de contrôle, ainsi que des informations d’état telles que la visibilité et les status activés/désactivés. L’interface utilisateur est représentée sous la forme d’une hiérarchie d’objets accessibles ; les modifications et les actions sont représentées en tant que WinEvents.

Microsoft Active Accessibility se compose des composants suivants :

  • Objet accessible : élément d’interface utilisateur logique (tel qu’un bouton) représenté par une interface COM ( IAccessible Component Object Model) et un identificateur enfant entier (ChildID).
  • WinEvents : système d’événements qui permet aux serveurs d’avertir les clients lorsqu’un objet accessible change. Pour plus d’informations, consultez WinEvents.
  • OLEACC.dll : bibliothèque de liens dynamiques au moment de l’exécution qui fournit l’API d’accessibilité Active Microsoft et l’infrastructure du système d’accessibilité. OLEACC implémente des objets proxy qui fournissent des informations d’accessibilité par défaut pour les éléments d’interface utilisateur standard, notamment les contrôles UTILISATEUR, les menus UTILISATEUR et les contrôles courants.

Pour Microsoft Active Accessibility, le composant système de l’infrastructure d’accessibilité (OLEACC) aide à la communication entre les technologies d’assistance (outils d’accessibilité) et les applications, comme le montre l’illustration suivante.

illustration montrant comment les outils d’accessibilité interagissent avec les applications

Les applications (serveurs Microsoft Active Accessibility) fournissent des informations sur l’accessibilité de l’interface utilisateur aux outils (clients Microsoft Active Accessibility), qui interagissent avec l’interface utilisateur pour le compte des utilisateurs. La limite de code est à la fois une limite programmatique et une limite de processus.

architecture UI Automation

Avec UI Automation, le composant principal UI Automation (UIAutomationCore.dll) est chargé dans les processus des outils d’accessibilité et des applications. Le composant de base gère la communication inter-processus, fournit des services de niveau supérieur, tels que la recherche d’éléments par valeurs de propriété, et permet l’extraction en bloc ou la mise en cache des propriétés, ce qui offre de meilleures performances que l’implémentation microsoft Active Accessibility.

UI Automation inclut des objets proxy qui fournissent des informations d’interface utilisateur sur les éléments d’interface utilisateur standard tels que les contrôles UTILISATEUR, les menus UTILISATEUR et les contrôles courants. Il comprend également des proxys qui permettent aux clients UI Automation d’obtenir des informations d’interface utilisateur à partir de serveurs d’accessibilité Microsoft Active.

L’illustration suivante montre les relations entre les différents composants UI Automation utilisés dans les outils d’accessibilité (clients) et dans les applications (fournisseurs).

illustration montrant comment les composants des outils d’accessibilité interagissent avec ceux des applications

Accessibilité active microsoft et interopérabilité UI Automation

Le UI Automation à Microsoft Active Accessibility Bridge permet aux clients Microsoft Active Accessibility d’accéder à UI Automation fournisseurs en convertissant le modèle objet UI Automation en modèle objet Microsoft Active Accessibility. L’illustration suivante montre le rôle du pont d’accessibilité active UI Automation-à-Microsoft.

illustration montrant le fonctionnement de l’automatisation de l’interface utilisateur avec les applications et les outils d’accessibilité

De même, le proxy Microsoft Active Accessibility-to-UI Automation traduit les modèles objet serveur basés sur l’accessibilité Active Microsoft pour les clients UI Automation. L’illustration suivante montre le rôle du proxy Microsoft Active Accessibility-to-UI Automation.

illustration montrant comment le proxy UI Automation fonctionne avec les applications et les outils d’accessibilité

The IAccessibleEx Interface

L’interface IAccessibleEx permet aux applications ou bibliothèques d’interface utilisateur existantes d’étendre leur modèle objet Microsoft Active Accessibility pour prendre en charge UI Automation sans réécrire l’implémentation à partir de zéro. Avec IAccessibleEx, vous pouvez implémenter uniquement les propriétés et les modèles de contrôle UI Automation supplémentaires nécessaires pour décrire entièrement l’interface utilisateur et ses fonctionnalités.

Étant donné que le proxy Microsoft Active Accessibility-to-UI Automation traduit les modèles objet des serveurs Microsoft Active Accessibility avec IAccessibleEx en tant que modèles objet UI Automation, UI Automation clients n’ont pas besoin d’effectuer de travail supplémentaire. L’interface IAccessibleEx peut également permettre aux clients Microsoft Active Accessibility in-process d’interagir directement avec UI Automation fournisseurs.

Pour plus d’informations, consultez L’interface IAccessibleEx.

Vue d’ensemble de l’API Windows Automation

The IAccessibleEx Interface

Considérations relatives à la sécurité pour les technologies d’assistance