Criando o objeto CUIAutomation

Esta seção descreve como começar a escrever um aplicativo cliente do Microsoft Automação da Interface do Usuário instanciando um objeto que implementa IUIAutomation.

Este tópico inclui as seções a seguir.

O objeto CUIAutomation

A primeira etapa no uso de Automação da Interface do Usuário é criar um objeto da classe CUIAutomation. Esse objeto expõe a interface IUIAutomation , que é o gateway para todos os outros objetos e interfaces usados por aplicativos cliente. Entre outras coisas, IUIAutomation é usado para as seguintes tarefas:

  • Assinando eventos.
  • Criando condições. Condições são objetos usados para restringir o escopo de pesquisas de elementos Automação da Interface do Usuário.
  • Obter Automação da Interface do Usuário elementos diretamente da área de trabalho (o elemento raiz) ou de coordenadas de tela ou identificadores de janela.
  • Criando objetos de andador de árvore que podem ser usados para navegar na hierarquia de elementos Automação da Interface do Usuário.
  • Convertendo tipos de dados.

Criando o objeto

Para começar a usar Automação da Interface do Usuário em seu aplicativo, execute as seguintes etapas:

  • Inclua UIAutomation.h nos cabeçalhos do projeto. UIAutomation.h traz os outros cabeçalhos que definem a API.
  • Declare um ponteiro para IUIAutomation.
  • Inicialize o COM (Component Object Model).
  • Crie uma instância de CUIAutomation e recupere a interface IUIAutomation no ponteiro.

A função de exemplo a seguir inicializa COM e cria o objeto CUIAutomation , recuperando a interface IUIAutomation no ponteiro 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));
}

Conceitual

Visão geral sobre eventos de automação de interface do usuário

Obtendo elementos da automação interface do usuário