Partager via


Interface IManagedAddin

Implémentez l'interface IManagedAddin pour créer un composant qui charge les compléments managés.Cette interface a été ajoutée à la version 2007 de Microsoft Office System.

[
    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éthodes

Le tableau suivant décrit les méthodes définies par l'interface IManagedAddin.

Nom

Description

IManagedAddin::Load

Appelée lors du chargement d'un complément managé par une application Microsoft Office.

IManagedAddin::Unload

Appelée juste avant le déchargement d'un complément managé par une application Microsoft Office.

Notes

Les applications Microsoft Office, depuis Microsoft Office System 2007, utilisent l'interface IManagedAddin pour aider à charger des compléments Office.Vous pouvez implémenter l'interface IManagedAddin pour créer vos propres chargeur de complément et exécution pour les compléments managés, au lieu d'utiliser le chargeur de complément (VSTOLoader.dll) et Visual Studio Tools pour Office Runtime.Pour plus d'informations, consultez Architecture des compléments d'application.

Chargement des compléments managés

Les étapes suivantes se produisent au démarrage d'une application :

  1. L'application découvre les compléments en recherchant les entrées sous la clé de Registre suivante :

    HKEY_CURRENT_USER\Software\Microsoft\Office\<nom de l'application>\Addins\

    Chaque entrée sous cette clé de Registre est un ID unique du complément.En général, c'est le nom de l'assembly du complément.

  2. L'application recherche une entrée Manifest sous l'entrée de chaque complément.

    Les compléments managés peuvent stocker le chemin d'accès complet d'un manifeste dans l'entrée Manifest sous HKEY_CURRENT_USER\Software\Microsoft\Office\<nom de l'application>\Addins\<ID du complément>.Un manifeste est un fichier (en général, un fichier XML) qui fournit des informations utilisées pour charger le complément.

  3. Si l'application trouve une entrée Manifest, elle tente de charger un composant de chargement de complément managé.Pour ce faire, l'application tente de créer un objet COM qui implémente l'interface IManagedAddin.

    Visual Studio Tools pour Office Runtime inclut un composant de chargeur de complément (VSTOLoader.dll), ou vous pouvez créer le vôtre en implémentant l'interface IManagedAddin.

  4. L'application appelle la méthode IManagedAddin::Load et transmet la valeur de l'entrée Manifest.

  5. La méthode IManagedAddin::Load réalise les tâches requises pour le chargement du complément, telles que la configuration du domaine d'application et de la stratégie de sécurité pour le complément en cours de chargement.

Pour plus d'informations sur les clés de Registre utilisées par les applications Microsoft Office pour rechercher et charger les compléments managés, consultez Entrées du Registre pour les compléments d'application.

Conseils pour l'implémentation de l'interface IManagedAddin

Si vous implémentez IManagedAddin, vous devez enregistrer la DLL contenant l'implémentation à l'aide du CLSID suivant :

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

Les applications Microsoft Office utilisent ce CLSID pour créer l'objet COM qui implémente l'interface IManagedAddin.

Mise en gardeAttention

Ce CLSID est également utilisé par VSTOLoader.dll dans Visual Studio Tools pour Office Runtime.Par conséquent, si vous utilisez IManagedAddin pour créer vos propres chargeur de complément et composant d'exécution, vous ne pouvez pas déployer votre composant sur des ordinateurs exécutant des compléments qui reposent sur Visual Studio Tools pour Office Runtime.

Voir aussi

Autres ressources

Référence des API non managées (Développement Office dans Visual Studio)