Condividi tramite


Creazione dell'oggetto CUIAutomation

Questa sezione descrive come iniziare a scrivere un'applicazione client di Automazione interfaccia utente Microsoft creando un'istanza di un oggetto che implementa IUIAutomation.

Questo argomento contiene le sezioni seguenti.

Oggetto CUIAutomation

Il primo passaggio nell'uso dell'automazione interfaccia utente consiste nel creare un oggetto della classe CUIAutomation. Questo oggetto espone l'interfaccia IUIAutomation, ovvero il gateway a tutti gli altri oggetti e interfacce usati dalle applicazioni client. Tra le altre cose, IUIAutomation viene usato per le attività seguenti:

  • Sottoscrizione di eventi.
  • Creazione di condizioni. Le condizioni sono oggetti usati per restringere l'ambito delle ricerche degli elementi di automazione interfaccia utente.
  • Ottenere elementi di automazione dell'interfaccia utente direttamente dal desktop (l'elemento radice), o dalle coordinate dello schermo o dagli handle di finestra.
  • Creazione di oggetti tree walker che possono essere usati per spostarsi nella gerarchia degli elementi di automazione interfaccia utente.
  • Conversione dei tipi di dati.

Creazione dell'oggetto

Per iniziare a usare Automazione interfaccia utente nell'applicazione, seguire questa procedura:

  • Includere UIAutomation.h nelle intestazioni del progetto. UIAutomation.h inserisce le altre intestazioni che definiscono l'API.
  • Dichiarare un puntatore a IUIAutomation.
  • Inizializzare il Component Object Model (COM).
  • Crea un'istanza di CUIAutomation e recupera l'interfaccia IUIAutomation nel tuo puntatore.

La seguente funzione di esempio inizializza COM e quindi crea l'oggetto CUIAutomation, recuperando nel puntatore ppAutomation l'interfaccia IUIAutomation.

#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));
}

concettuale

Panoramica degli eventi di automazione dell'interfaccia utente

Ottenere Elementi dell'Automazione dell'Interfaccia Utente