Interface IManagedAddin
Implemente a interface IManagedAddin para criar um componente que carrega suplementos VSTO gerenciados. Essa interface foi adicionada ao 2007 Microsoft Office System.
Sintaxe
[
object,
uuid(B9CEAB65-331C-4713-8410-DDDAF8EC191A),
pointer_default(unique),
oleautomation
]
interface IManagedAddin : IUnknown
{
HRESULT Load(
[in] BSTR bstrManifestURL,
[in] IDispatch *pdispApplication);
HRESULT Unload();
};
Métodos
A tabela a seguir lista os métodos definidos pela interface IManagedAddin.
Nome | Descrição |
---|---|
IManagedAddin::Carregar | Chamado quando um aplicativo do Microsoft Office carrega um suplemento VSTO gerenciado. |
IManagedAddin::Descarregar | Chamado pouco antes de um aplicativo do Microsoft Office descarregar um suplemento VSTO gerenciado. |
Comentários
Os aplicativos do Microsoft Office, começando com o 2007 Microsoft Office System, usam a interface IManagedAddin para ajudar a carregar os suplementos VSTO do Office. Você pode implementar a interface IManagedAddin para criar seu próprio carregador de suplementos VSTO e tempo de execução para suplementos VSTO gerenciados, em vez de usar o carregador de suplementos VSTO (VSTOLoader.dll) e o Visual Studio Tools for Office runtime. Para obter mais informações, consulte Arquitetura de suplementos VSTO.
Como os suplementos gerenciados são carregados
As etapas a seguir ocorrem quando um aplicativo é iniciado:
O aplicativo descobre suplementos VSTO procurando 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 ID exclusiva do suplemento VSTO. Normalmente, esse é o nome do assembly do suplemento VSTO.
O aplicativo procura uma
Manifest
entrada sob a entrada para cada suplemento VSTO.Os suplementos VSTO gerenciados podem armazenar o caminho completo de um manifesto
Manifest
na entrada em HKEY_CURRENT_USER\Software\Microsoft\Office\application name>\Addins\<<add-in ID.> Um manifesto é um arquivo (normalmente, um arquivo XML) que fornece informações que são usadas para ajudar a carregar o suplemento VSTO.Se o aplicativo encontrar uma
Manifest
entrada, o aplicativo tentará carregar um componente gerenciado do carregador de suplementos VSTO. O aplicativo faz isso tentando criar um objeto COM que implementa a interface IManagedAddin.O tempo de execução do Visual Studio Tools for Office inclui um componente carregador de suplemento VSTO (VSTOLoader.dll), ou você pode criar seu próprio implementando a interface IManagedAddin.
O aplicativo chama o método IManagedAddin::Load e passa o valor da
Manifest
entrada.O método IManagedAddin::Load executa tarefas necessárias para carregar o suplemento VSTO, como configurar o domínio do aplicativo e a diretiva de segurança para o suplemento VSTO que está sendo carregado.
Para obter mais informações sobre as chaves do Registro que os aplicativos do Microsoft Office usam para descobrir e carregar suplementos VSTO gerenciados, consulte Entradas do Registro para suplementos VSTO.
Orientação para implementar 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
Os aplicativos do Microsoft Office usam esse CLSID para criar o objeto COM que implementa IManagedAddin.
Cuidado
Esse CLSID também é usado pelo VSTOLoader.dll no tempo de execução do Visual Studio Tools for Office. Portanto, se você usar IManagedAddin para criar seu próprio carregador de suplementos VSTO e componente de tempo de execução, você não pode implantar seu componente em computadores que estão executando suplementos VSTO que dependem do Visual Studio Tools for Office runtime .