Compartilhar via


Chamar o código no nível de aplicativo Adicionar-ins de Outro soluções do Office

Se aplica a

As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office.

Tipo de Projeto

  • Projetos de nível de aplicativo

Versão do Microsoft Office

  • Microsoft Office Sistema de 2007

  • Microsoft Office 2003

For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto.

Você pode expor um objeto em seu Adicionar - na Outro soluções do Microsoft Office.Isso é útil se o suplemento fornece um serviço que você deseja ativar outras soluções do Office para uso.Por exemplo, se você tiver um Adicionar-in para o Microsoft Office Excel que executa cálculos nos dados financeiros de um serviço da Web, Outro soluções do Office podem executar esses cálculos chamando o suplemento do Excel em tempo de execução.

Ferramentas do Visual Studio para o Office também fornece um recurso semelhante para personalizações em nível de documento.Se você estiver desenvolvendo uma personalização para o 2007 Microsoft Office Sistema, você pode chamar código em sua personalização do código do VBA no documento.For more information, see Chamar o código em nível de documento personalizações do VBA.

Soluções do Office que podem chamada o código em um Adicionar - no

Você pode expor um objeto em um Adicionar-in dos seguintes tipos de soluções do Office:

  • Outros Ferramentas do Visual Studio para o Office Adicionar-ins.

  • Nível de documento personalizações que são Carregado no mesmo processo aplicativo como o Adicionar-in.

  • COM Adicionar-ins (isto é, Adicionar-ins que implementam a interface de IDTExtensibility2 diretamente).

  • Código do Visual Basic for Applications (VBA) em um documento que é carregado no mesmo processo de aplicativo o Adicionar-in.

Expor objetos Outro soluções do Office

Para expor um objeto para outros suplementos, Substituir o método RequestComAddInAutomationService na classe ThisAddIn.Retornar o objeto que você deseja expor a Outro soluções do Office.

Quando o Adicionar - in é carregado, o Tempo de execução Ferramentas do Visual Studio para o Office chama o método RequestComAddInAutomationService.O tempo de execução atribui ao objeto retornado da propriedade Object de um objeto de COMAddIn que representa o Adicionar-in.Este objeto COMAddIn está disponível Outro soluções do Office.

Requisitos do objeto retornado

A implementação do RequestComAddInAutomationService deve retornar uma instância de uma classe que atende aos seguintes requisitos:

Se você retornar o objeto não atender a esses requisitos, o Tempo de execução Ferramentas do Visual Studio para o Office lançará um InvalidCastException depois que ele chama sua implementação.

Para ver um exemplo de uma classe que atende a esses requisitos, consulte Demonstra Passo a passo: Chamar o código em um aplicativo-nível Adicionar - in do VBA.

Exemplo

O exemplo de código a seguir demonstra como substituir RequestComAddInAutomationService.Este exemplo pressupõe que você definiu uma classe chamada AddInUtilities que você deseja expor a Outro soluções do Office, e a classe AddInUtilities atende aos requisitos especificados acima.Para ver este código no contexto de um maior explicação passo a passo, consulte Demonstra Passo a passo: Chamar o código em um aplicativo-nível Adicionar - in do VBA.

Private utilities As AddInUtilities

Protected Overrides Function RequestComAddInAutomationService() As Object
    If utilities Is Nothing Then
        utilities = New AddInUtilities()
    End If
    Return utilities
End Function
private AddInUtilities utilities;

protected override object RequestComAddInAutomationService()
{
    if (utilities == null)
        utilities = new AddInUtilities();

    return utilities;
}

Acessando objetos de Outro soluções do Office

No código de uma outra solução do Office (não o expostos Adicionar - in), execute as seguintes etapas:

  1. Obter o objeto COMAddIn que representa o expostos Adicionar - in.Você pode acessar todas as disponíveis Adicionar-ins usando a propriedade COMAddIns da classe Application.

  2. Acessar a propriedade Object do objeto COMAddIn.

O exemplo de código a seguir demonstra como usar o VBA para chamar um método em um Adicionar-in.Esta macro VBA chama um método chamado ImportData definido em um Adicionar-in que é denominado ExcelImportData.Para ver este código no contexto de um maior explicação passo a passo, consulte Demonstra Passo a passo: Chamar o código em um aplicativo-nível Adicionar - in do VBA.

Sub CallVSTOMethod()
    Dim addIn As COMAddIn
    Dim automationbject As Object
    Set addIn = Application.COMAddIns("ExcelImportData")
    Set automationObject = addIn.Object
    automationObject.ImportData
End Sub

Consulte também

Tarefas

Demonstra Passo a passo: Chamar o código em um aplicativo-nível Adicionar - in do VBA

Como: Criar o Visual Studio Tools para projetos do Office

Conceitos

Programação Application-Nível Adicionar-ins

Desenvolvendo soluções do Office

Item de host addIn

Personalizando recursos de interface do usuário usando interfaces de extensibilidade

Arquitetura de nível de aplicativo Adicionar-ins