Comment : créer des compléments de solution

Les macros complémentaires Visual Studio sont déconseillées dans Visual Studio 2013. Vous devriez mettre vos macros complémentaires à niveau vers des extensions VSPackage. Pour plus d'informations sur les mises à jour, consultez FAQ : conversion de compléments en extensions VSPackage.

Lorsque vous créez un complément en utilisant l'Assistant Complément, ce complément est automatiquement associé à l'environnement de développement intégré (IDE). Il peut être chargé lorsque l'IDE démarre et poursuit alors son exécution jusqu'à ce que vous le déchargiez ou que vous quittiez l'IDE. Vous pouvez aussi associer un complément à une solution pour qu'elle devienne un complément Solution. Un complément Solution peut être utile lorsque vous souhaitez le charger uniquement avec une solution spécifique à cause des dépendances système ou réduire l'utilisation inutile des ressources système. Lorsque Visual Studio charge une solution, il examine en premier lieu le fichier solution (.sln) pour voir si celui-ci référence des compléments. Si tel est le cas, il les charge et appelle les mêmes méthodes IDTExtensibility2 qu'un complément Visual Studio normal.

L'Assistant Complément n'offre pas actuellement une méthode pour indiquer si un complément est un complément Solution. Toutefois, en apportant certains changements mineurs, vous pouvez transformer un complément en un complément Solution. Si un complément classique stocke ses informations dans le fichier XML .Addin. ou, dans le cas d'un complément COM non managé, dans le Registre, un complément Solution stocke ses informations dans le fichier .SLN de la solution.

Notes

Les compléments Solution doivent être enregistrés en utilisant l'inscription COM traditionnelle.Comme les compléments Visual Studio 2005 utilisent la nouvelle inscription XML (fichier .AddIn), vous devez la définir pour l'enregistrer dans le Registre Windows.La procédure ci-après montre comment effectuer cette opération.

Notes

Les boîtes de dialogue et les commandes de menu qui s'affichent peuvent être différentes de celles qui sont décrites dans l'aide, en fonction de vos paramètres actifs ou de l'édition utilisée.Ces procédures ont été développées avec les paramètres de développement généraux actifs.Pour modifier vos paramètres, sélectionnez Importation et exportationde paramètres dans le menu Outils.Pour plus d'informations, consultez Paramètres Visual Studio.

Création d'un complément Solution

La procédure suivante montre comment créer un complément Solution.

Pour créer un complément Solution

  1. Créez un projet Complément en utilisant l'Assistant Complément. Sélectionnez le langage approprié et acceptez tous les autres paramètres par défaut.

  2. Cliquez avec le bouton droit sur le projet, puis sélectionnez Propriétés.

  3. Cliquez sur l'onglet Générer et activez la case à cocher Inscrire pour COM Interop.

    Le complément peut alors être référencé en tant qu'objet COM ; condition nécessaire aux compléments Solution. Bien que l'Assistant Complément ait créé un fichier XML .AddIn pour le projet, un complément Solution n'en a pas besoin. Vous pouvez donc le supprimer si vous le souhaitez.

  4. Sachant que le complément Solution est un objet COM, vous devez l'enregistrer avec Windows. Pour ce faire, démarrez une invite de commandes Visual Studio et tapez regasm /codebase SolutionAddinName.dll.

  5. Sachant que vous ne pouvez pas associer un complément à un fichier solution par le biais du Registre, vous devez le faire par voie de code. Pour enregistrer le complément avec le fichier solution, utilisez la méthode Add de la collection AddIns de la solution.

    AddIns retourne une collection AddIns. Cette opération est semblable à AddIns mais, au lieu de se composer de tous les compléments dans Visual Studio, elle se compose uniquement des compléments enregistrés avec le fichier solution spécifié. Aussi, pour enregistrer un complément en tant que complément Solution, utilisez Solution.AddIns.Add.

    Voici un exemple en Visual Basic et en Visual C#. (Ces lignes doivent remplacer la déclaration de variable de complément dans la méthode OnConnection fournie par l'Assistant Complément.)

    Imports EnvDTE
    Imports EnvDTE80
    Imports EnvDTE90
    Imports EnvDTE100
    .
    .
    .
    Dim addin As EnvDTE.AddIn = _
    _applicationObject.Solution2.AddIns.Add("MyAddin1.Connect", "MyAddinName", "My add-in description", True)
    
    using EnvDTE;
    using EnvDTE80;
    using EnvDTE90;
    using EnvDTE100;
    .
    .
    .
    EnvDTE.AddIn addin = 
    _applicationObject.Solution.AddIns.Add(MyAddin.Connect, 
    "MyAddinName", "My add-in description", true);
    

Voir aussi

Tâches

Comment : créer un complément

Concepts

Contrôle de projets et de solutions

Introduction à l'objet VSProject2