Automação
Automação (anteriormente conhecida como automação OLE) possibilita que um aplicativo para manipular objetos implementados no outro aplicativo ou para expor objetos de modo que pode ser manipulados.
Um servidor de automação é um aplicativo (um tipo de servidor COM) que expõe sua funcionalidade através de interfaces COM outros aplicativos, chamado clientes de automação.A exposição permite que clientes de automação automatizar determinadas funções diretamente acessar objetos e usando os serviços que eles fornecem.
Clientes e servidores de automação usam interfaces COM que sempre são derivados de IDispatch e levar e retornar um conjunto específico de tipos de dados chamado tipos de automação.Você pode automatizar qualquer objeto que expõe uma interface de automação, oferecendo métodos e propriedades que você pode acessar outros aplicativos.Automação está disponível para objetos OLE e COM.O objeto automatizado pode ser local ou remoto (em outra máquina acessível através de uma rede); Portanto, há duas categorias de automação:
Automação (local).
Automação remota (em uma rede, usando COM distribuído ou DCOM).
Expor objetos é benéfico quando aplicativos fornecem 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 processador de texto pode expor sua funcionalidade de verificação ortográfica para outros programas.Exposição de objetos permite que fornecedores para melhorar seus aplicativos usando a funcionalidade pronta de outros aplicativos.Dessa forma, a automação se aplica alguns dos princípios da programação orientada a objeto, como, por exemplo, reutilização e encapsulamento, no nível de aplicativos próprios.
Mais importante é o suporte a automação fornece a usuários e provedores de soluções.Expondo a funcionalidade do aplicativo através de uma interface comum e bem definida, automação torna possível criar soluções completas em uma única geral linguagem de programação, como o Microsoft Visual Basic, em vez de em linguagens de macro variado de aplicativos específicos.
Muitos aplicativos comerciais, como o Microsoft Excel e Microsoft Visual C++ permitem automatizar grande parte de sua funcionalidade.Por exemplo, no Visual C++, você pode escrever VBScript macros para automatizar compilações, aspectos de edição ou tarefas de depuração de código.
Passando parâmetros na automação
Uma dificuldade em criar métodos de automação está ajudando a fornecer um mecanismo uniforme "seguro" para passar dados entre clientes e servidores de automação.Automação usa o VARIANT tipo para passar dados.O VARIANT o tipo é uma união marcada.Ele tem um membro de dados do valor (Esta é uma união C++ anônimo) e um membro de dados indicando o tipo de informações armazenadas na união.O VARIANT tipo oferece suporte a vários tipos de dados padrão: inteiros de 2 e 4 bytes, números de ponto flutuante de 4 e 8 bytes, seqüências de caracteres e valores booleanos.Além disso, ele oferece suporte a HRESULT (códigos de erro OLE), Moeda (um ponto fixo tipo numérico), e Data tipos (absoluta data e hora), bem como ponteiros para IUnknown e IDispatch interfaces.
O VARIANT tipo é encapsulado na COleVariant classe.O suporte Moeda e Data classes são encapsuladas na COleCurrency e COleDateTime classes.
Amostras de automação
AUTOCLIK usar esse exemplo para aprender técnicas de automação e como base para o aprendizado de automatização remota.
ACDUAL adiciona duas interfaces a um aplicativo de servidor de automação.
CALCDRIV aplicativo de cliente de automação dirigir MFCCALC.
INPROC demonstra um aplicativo de servidor de automação do processo.
IPDRIVE aplicativo de cliente de automação dirigir INPROC.
MFCCALC demonstra um aplicativo de cliente de automação.
O que você deseja saber mais sobre?
O que você deseja fazer?
Passar parâmetros na automação