Partilhar via


Interface de IManagedAddin

Implementar a IManagedAddin interface para criar um componente que carrega gerenciados add-ins. Essa interface foi adicionada no sistema de Microsoft Office de 2007.

[
    object,
    uuid(B9CEAB65-331C-4713-8410-DDDAF8EC191A),
    pointer_default(unique),
    oleautomation
]
interface IManagedAddin : IUnknown
{
    HRESULT Load(
        [in] BSTR bstrManifestURL, 
        [in] IDispatch *pdispApplication);
    HRESULT Unload();
};

Methods

A tabela a seguir lista os métodos que são definidos pelo IManagedAddin interface.

Name

Description

IManagedAddin::Load

Chamado quando um Microsoft Office o aplicativo carrega um suplemento gerenciado.

IManagedAddin::Unload

Chamado antes de um Microsoft Office aplicativo descarrega um suplemento gerenciado.

Comentários

Aplicativos de Microsoft Office, iniciando com o sistema de Microsoft Office de 2007, usam o IManagedAddin interface para ajudar a carregar o Office add-ins. Você pode implementar a IManagedAddin interface para criar seu próprio carregador de suplementos e o tempo de execução gerenciados suplementos, em vez de usar o add-in loader (VSTOLoader.dll) e Visual Studio Tools for Office runtime. For more information, see Arquitetura dos suplementos de nível de aplicativo.

Como suplementos gerenciados são carregados.

Quando um aplicativo é iniciado, ocorrem as seguintes etapas:

  1. O aplicativo detecta suplementos procurando por entradas sob a seguinte chave do registro:

    HKEY_CURRENT_USER\Software\Microsoft\Office\< nome do aplicativo >\Addins\

    Cada entrada sob essa chave do registro é uma identificação exclusiva do suplemento. Normalmente, isso é o nome do assembly do suplemento.

  2. O aplicativo procura um Manifest entrada sob a entrada para cada add-in.

    Suplementos gerenciados podem armazenar o caminho completo de um manifesto na Manifest a entrada em HKEY_CURRENT_USER\Software\Microsoft\Office\< nome do aplicativo >\Addins\< suplemento ID >. Um manifesto é um arquivo (normalmente, um arquivo XML) que fornece informações que são usadas para ajudar a carregar o suplemento.

  3. Se o aplicativo localiza um Manifest entrada, o aplicativo tenta carregar um componente gerenciado carregador do suplemento. O aplicativo faz isso tentando criar um objeto COM que implementa o IManagedAddin interface.

    O Visual Studio Tools for Office runtime inclui um componente de carregador de suplementos (VSTOLoader.dll), ou você pode criar seus próprios por implementar a IManagedAddin interface.

  4. O aplicativo chama o IManagedAddin::Load método e passar no valor da Manifest entrada.

  5. O IManagedAddin::Load método executa as tarefas necessárias para carregar o add-in, como, por exemplo, configurando a diretiva de segurança e de domínio de aplicativo para o suplemento está sendo carregado.

Para obter mais informações sobre o registro chaves usadas por aplicativos de Microsoft Office para descobrir e carregar suplementos gerenciados, consulte Entradas de registro de suplementos em nível de aplicativo.

Orientação para a implementação de IManagedAddin

Se você implementar IManagedAddin, você deve registrar a DLL que contém a implementação usando o seguinte CLSID:

99D651D7-5F7C-470E-8A3B-774D5D9536AC

Aplicativos de Microsoft Office de usam esta CLSID para criar o objeto COM que implementa IManagedAddin.

Aviso

Esta CLSID também é usada pelo VSTOLoader.dll na Visual Studio Tools for Office runtime. Portanto, se você usar IManagedAddin para criar seu próprio carregador de suplementos e componentes de tempo de execução, é possível implantar o seu componente para computadores que estejam executando o add-ins contam com o Visual Studio Tools for Office runtime.

Consulte também

Outros recursos

Referência de API não gerenciada (desenvolvimento do Office em Visual Studio)