Compartilhar via


Adicionando a funcionalidade do Microsoft Agent ao seu aplicativo

[O Microsoft Agent foi preterido a partir do Windows 7 e pode estar indisponível nas versões subsequentes do Windows.]

Para acessar as interfaces de servidor do Microsoft Agent, o Agent já deve estar instalado no sistema de destino. Não há suporte para a instalação diferente de usar o arquivo executável de auto-instalação do Agent, como a tentativa de copiar e registrar arquivos de componente do Agent. Isso garante uma instalação consistente e completa. Observe que o arquivo de autoinstalação do Microsoft Agent não será instalado no Microsoft Windows 2000 e em sistemas operacionais posteriores porque essas versões do sistema operacional já incluem sua própria versão do Agent.

Para instalar com êxito o Agent em um sistema de destino com um sistema operacional Microsoft Windows anterior, você também deve garantir que o sistema de destino tenha uma versão recente do runtime do Microsoft Visual C++ (Msvcrt.dll), da ferramenta de registro da Microsoft (Regsvr32.dll) e das dlls do Microsoft COM. A maneira mais fácil de garantir que os componentes necessários estejam no sistema de destino é exigir que o Microsoft Internet Explorer 3.02 ou posterior esteja instalado. Como alternativa, você pode instalar os dois primeiros componentes que estão disponíveis como parte do Microsoft Visual C++. As dlls COM necessárias podem ser instaladas como parte da atualização do Microsoft DCOM, disponível no site da Microsoft. Você pode encontrar mais informações e informações de licenciamento para esses componentes no site da Microsoft.

Os componentes de linguagem do agente podem ser instalados da mesma maneira. Da mesma forma, você pode usar essa técnica para instalar o formato ACS dos caracteres da Microsoft disponíveis para distribuição no site do Microsoft Agent. Os arquivos de caracteres são instalados automaticamente no subdiretório \Chars do Microsoft Agent.

Como os componentes do Microsoft Agent foram projetados como componentes do sistema operacional, o Agent pode não ser desinstalado. Da mesma forma, em que o Agent já está instalado como parte do sistema operacional Windows, o gabinete de auto-instalação do Agent pode não ser instalado.

Depois de instalado, para chamar as interfaces do Agent, crie uma instância do servidor e solicite um ponteiro para uma interface específica à qual o servidor dá suporte usando a convenção COM padrão. Em particular, a biblioteca COM fornece uma função de API, CoCreateInstance, que cria uma instância do objeto e retorna um ponteiro para a interface solicitada do objeto. Solicite um ponteiro para a interface IAgent ou IAgentEx em sua chamada CoCreateInstance ou em uma chamada subsequente para QueryInterface.

O código a seguir ilustra isso em C/C++.

hRes = CoCreateInstance(CLSID_AgentServer,
                     NULL,
                     CLSCTX_SERVER,
                     IID_IAgentEx,
                     (LPVOID *)&pAgentEx);

Se o servidor do Microsoft Agent estiver em execução, essa função se conectará ao servidor; caso contrário, ele iniciará o servidor.

Observe que as interfaces de servidor do Microsoft Agent geralmente incluem interfaces estendidas que incluem um sufixo "Ex". Essas interfaces são derivadas de e, portanto, incluem todas as funcionalidades de seus equivalentes não Ex. Se você quiser usar qualquer um dos recursos estendidos, use as interfaces Ex.

Funções que levam ponteiros para BSTRs alocam memória usando SysAllocString. É responsabilidade do chamador liberar essa memória usando SysFreeString.