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’interopérabilité microsoft Active Accessibility et UI Automation, consultez Common Infrastructure.

Cette rubrique contient les sections suivantes.

Architecture d’accessibilité active Microsoft

Microsoft Active Accessibility expose des informations de base sur les contrôles tels que le nom du contrôle, l’emplacement à l’écran et le type de contrôle, ainsi que les informations d’état telles que la visibilité et l’état activé/désactivé. 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 IAccessible Component Object Model (COM) et un identificateur enfant entier (ChildID).
  • WinEvents : système d’événements qui permet aux serveurs de notifier 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 Microsoft Active Accessibility 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 USER, les menus USER et les contrôles communs.

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 l’illustre l’illustration suivante.

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

Les applications (serveurs Microsoft Active Accessibility) fournissent des informations d’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 un programme et une limite de processus.

UI Automation Architecture

Avec UI Automation, le composant principal UI Automation (UIAutomationCore.dll) est chargé dans les processus des outils d’accessibilité et des applications. Le composant principal gère la communication interprocessus, 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 d’accessibilité active Microsoft.

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

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

Interopérabilité Microsoft Active Accessibility et UI Automation

Ui Automation vers Microsoft Active Accessibility Bridge permet aux clients Microsoft Active Accessibility d’accéder aux fournisseurs UI Automation 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-to-Microsoft.

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

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

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

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 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 microsoft Active Accessibility -to-UI Proxy Automation traduit les modèles objet de IAccessibleEx-enabled Microsoft Active Accessibility server as UI Automation object models, 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 les fournisseurs UI Automation.

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

Vue d’ensemble de l’API Windows Automation

l’interface IAccessibleEx

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