Création de l’objet CUIAutomation

Cette section explique comment commencer à écrire une application cliente Microsoft UI Automation en instanciant un objet qui implémente IUIAutomation.

Cette rubrique contient les sections suivantes.

Objet CUIAutomation

La première étape de l’utilisation de UI Automation consiste à créer un objet de la classe CUIAutomation. Cet objet expose l’interface IUIAutomation , qui est la passerelle vers tous les autres objets et interfaces utilisés par les applications clientes. Entre autres, IUIAutomation est utilisé pour les tâches suivantes :

  • Abonnement aux événements.
  • Création de conditions. Les conditions sont des objets utilisés pour limiter l’étendue des recherches d’éléments UI Automation.
  • Obtention de UI Automation éléments directement à partir du bureau (l’élément racine), ou à partir de coordonnées d’écran ou de poignées de fenêtre.
  • Création d’objets tree walker qui peuvent être utilisés pour naviguer dans la hiérarchie des éléments UI Automation.
  • Conversion des types de données.

Création de l’objet

Pour commencer à utiliser UI Automation dans votre application, procédez comme suit :

  • Incluez UIAutomation.h dans vos en-têtes de projet. UIAutomation.h introduit les autres en-têtes qui définissent l’API.
  • Déclarez un pointeur vers IUIAutomation.
  • Initialisez le modèle COM (Component Object Model).
  • Créez un instance de CUIAutomation et récupérez l’interface IUIAutomation dans votre pointeur.

L’exemple de fonction suivant initialise COM, puis crée l’objet CUIAutomation , récupérant l’interface IUIAutomation dans le pointeur ppAutomation .

#include <uiautomation.h>

// CoInitialize must be called before calling this function, and the  
// caller must release the returned pointer when finished with it.
// 
HRESULT InitializeUIAutomation(IUIAutomation **ppAutomation)
{
    return CoCreateInstance(CLSID_CUIAutomation, NULL,
        CLSCTX_INPROC_SERVER, IID_IUIAutomation, 
        reinterpret_cast<void**>(ppAutomation));
}

Conceptuel

Vue d'ensemble des événements UI Automation

Obtention d'éléments UI Automation