Partilhar via


Automação

A automação (anteriormente conhecido como a Automação OLE) possibilita para que um aplicativo manipule os objetos implementados em outro aplicativo, ou expõe objetos de forma que os pode ser manipulada.

Servidor de automação é um aplicativo (um tipo de servidor da) que expõe a funcionalidade por meio das interfaces para outros aplicativos, Clientes de automaçãochamado COM. A exposição permite que clientes de automação para automatizar algumas funções diretamente acessando objetos e usando os serviços que oferecem.

As interfaces do COM o uso de servidores e clientes de automação sempre que são derivadas de IDispatch e têm e retornam um conjunto específico de tipos de dados chamado Automação tipo. Você pode automatizar qualquer objeto que expõe uma interface de automação, fornecendo os métodos e as propriedades que você pode acessar de outros aplicativos. Está disponível para a automação OLE e objetos COM. O objeto pode ser automatizado local ou remoto (em outro computador acessível por uma rede); como consequência há duas categorias de automação:

  • Automação (local).

  • Automação remoto (em uma rede, usando COM distribuída, ou DCOM).

Expor objetos é benéfica quando os aplicativos fornecem a funcionalidade útil para outros aplicativos. Por exemplo, um controle ActiveX é um tipo de servidor de automação; o aplicativo que hospeda o controle ActiveX é o cliente de automação do controle.

Como outro exemplo, um tratamento de textos pode expor a funcionalidade de spellchecking a outros programas. A exposição de objetos habilita fornecedores para melhorar os aplicativos usando a funcionalidade pré-feito de outros aplicativos. Dessa forma, a automação aplica qualquer um dos fundamentos de programação orientada a objeto, como a capacidade e o encapsulamento, no nível de aplicativos ele mesmo.

É mais importante o suporte que a automação fornece aos usuários e os provedores de solução. Expõe a funcionalidade do aplicativo por meio de uma interface comum, bem definida, automação torna possível criar soluções abrangentes em uma única linguagem de programação geral, como o Microsoft Visual Basic, em vez de em linguagens de macro específicas do aplicativo várias.

Muitos aplicativos comerciais, como o Microsoft Excel e o Microsoft Visual C++, permitem que você automatize grande parte de sua funcionalidade. Por exemplo, no Visual C++, você pode escrever macros de VBScript para automatizar construções, aspectos da edição de código, ou tarefas de depuração.

Passando parâmetros na automação

Uma dificuldade na criação de métodos de automação é ajudar a fornecer um mecanismo seguro “”) para transmitir dados entre servidores e clientes de automação. A automação usa o tipo de VARIANT para transmitir dados. O tipo de VARIANT é uma união marcada. Tem um membro de dados do valor (uma união anônima C++) e um membro de dados que indica o tipo de informações armazenadas na união. O tipo de VARIANT oferece suporte a um número de tipos de dados padrão: 2 - e inteiros de 4 bytes, 4 - e números, cadeias de caracteres, e valores boolianos de ponto flutuante de 8 bytes. Além disso, o oferece suporte a HRESULT (códigos de erro OLE), CURRENCY (um tipo numérico de ponto fixo), e tipos de DATA (data e hora absolutas), bem como ponteiros a IUnknown e às interfaces de IDispatch .

O tipo de VARIANT é encapsulado na classe de COleVariant . CURRENCY e classes de suporte de DATA são encapsulados nas classes de COleCurrency e de COleDateTime .

Automação Exemplos

  • uso deAUTOCLIKeste exemplo aprenda técnicas de automação e como uma base para saber a automação remoto.

  • adicionaACDUAL interfaces duplas para um aplicativo de servidor de automação.

  • aplicativo cliente de automação deCALCDRIVque resulta MFCCALC.

  • INPROC demonstra um aplicativo de servidor em processo de automação.

  • aplicativo cliente de automação deIPDRIVEque resulta INPROC.

  • MFCCALC demonstra um aplicativo cliente de automação.

Que você deseja saber mais?

O que você deseja fazer?

Consulte também

Conceitos

MFC COM