Compartir a través de


Interfaz IManagedAddin

Actualización: noviembre 2007

Implemente la interfaz IManagedAddin para crear un componente que carga los complementos administrados. Esta interfaz se ha agregado en Microsoft Office System 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();
};

Métodos

En la tabla siguiente se muestran los métodos definidos por la interfaz IManagedAddin.

Nombre

Descripción

IManagedAddin::Load

Se le llama cuando una aplicación de Microsoft Office carga un complemento administrado.

IManagedAddin::Unload

Se le llama antes de que una aplicación de Microsoft Office descargue un complemento administrado.

Comentarios

Las aplicaciones de Microsoft Office, a partir de Microsoft Office System 2007, utilizan la interfaz IManagedAddin como ayuda para cargar los complementos de Visual Studio Tools para Office. Puede implementar la interfaz IManagedAddin para crear su propio cargador de complementos y su propio motor en tiempo de ejecución para los complementos administrados, en lugar de utilizar el cargador de complementos (VSTOLoader.dll) y el motor en tiempo de ejecución que se incluyen en Visual Studio Tools para Office. Para obtener más información sobre VSTOLoader.dll y el motor en tiempo de ejecución de Visual Studio Tools para Office, vea Arquitectura de los complementos de nivel de aplicación.

Carga de los complementos administrados

Cuando se inicia una aplicación, se producen los pasos siguientes:

  1. La aplicación descubre los complementos buscando las entradas de la siguiente clave del Registro:

    HKEY_CURRENT_USER\Software\Microsoft\Office\<nombre de la aplicación>\Complementos\

    Cada entrada de esta clave del Registro es un identificador único para el complemento. Normalmente, es el nombre de ensamblado del complemento.

  2. La aplicación busca una entrada Manifest en la clave para cada complemento.

    Los complementos administrados pueden almacenar la ruta de acceso completa de un manifiesto en la entrada Manifest bajo HKEY_CURRENT_USER\Software\Microsoft\Office\<nombre de la aplicación>\Complementos\<identificador del complemento>. Un manifiesto es un archivo (normalmente un archivo XML) que proporciona información que se utiliza como ayuda para cargar el complemento.

  3. Si la aplicación encuentra una entrada Manifest, intenta cargar un componente de cargador de complementos administrados. Para hacerlo, intenta crear un objeto COM que implementa la interfaz IManagedAddin.

    El motor en tiempo de ejecución de Visual Studio Tools para Office incluye un componente de cargador de complementos (VSTOLoader.dll), pero también puede crear su propio componente si implementa la interfaz IManagedAddin.

  4. La aplicación llama al método IManagedAddin::Load y le pasa el valor de la entrada Manifest.

  5. El método IManagedAddin::Load realiza las tareas necesarias para cargar el complemento, como configurar el dominio de aplicación y la directiva de seguridad para el complemento que se está cargando.

Para obtener más información sobre las claves de Registro que las aplicaciones de Microsoft Office utilizan para descubrir y cargar complementos administrados, vea Entradas del Registro de complementos de nivel de aplicación.

Guía para implementar IManagedAddin

Si implementa IManagedAddin, debe registrar el archivo DLL que contiene la implementación mediante el siguiente CLSID:

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

Las aplicaciones de Microsoft Office utilizan este CLSID para crear el objeto COM que implementa IManagedAddin.

Precaución:

VSTOLoader.dll utiliza también este CLSID en tiempo de ejecución de Visual Studio Tools para Office. Por tanto, si utiliza IManagedAddin para crear su propio componente de cargador de complementos y motor en tiempo de ejecución, no puede implementar el componente en equipos que ejecuten complementos creados con Visual Studio Tools para Office.

Vea también

Otros recursos

Referencia de API no administrada (Visual Studio Tools para Office)