Comment : créer des compléments de solution
Mise à jour : novembre 2007
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 également associer un complément à une solution afin qu'il devienne complément Solution. Un complément Solution peut s'avérer utile pour charger un complément uniquement avec une solution spécifique, du fait de dépendances système, ou pour minimiser une sollicitation 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. Dans l'affirmative, il les charge et appelle les mêmes méthodes IDTExtensibility2 qu'un complément Visual Studio normal.
L'Assistant Complément n'offre actuellement aucune façon d'indiquer si un complément donné constitue ou non un complément Solution. Toutefois, vous pouvez faire d'un complément typique un complément Solution, au prix de quelques modifications mineures. Tandis qu'un complément typique 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.
Remarque : |
---|
Les compléments Solution doivent être enregistrés en utilisant l'inscription COM traditionnelle. Sachant que les compléments Visual Studio 2005 utilisent la nouvelle inscription XML (fichier .AddIn), vous devez les configurer de sorte qu'ils s'enregistrent dans le Registre Windows. La procédure ci-après montre comment effectuer cette opération. |
Remarque : |
---|
Selon vos paramètres actifs ou votre édition, les boîtes de dialogue et les commandes de menu que vous voyez peuvent différer de celles qui sont décrites dans l'aide. 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
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.
Cliquez avec le bouton droit sur le projet, puis sélectionnez Propriétés.
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.
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.
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. Elle est semblable à AddIns si ce n'est qu'au lieu de se composer de tous les compléments présents 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.)
Dim addin As EnvDTE.AddIn = _ _applicationObject.Solution2.AddIns.Add("MyAddin1.Connect", "MyAddinName", "My add-in description", True)
EnvDTE.AddIn addin = _applicationObject.Solution.AddIns.Add(MyAddin.Connect, "MyAddinName", "My add-in description", true);
Voir aussi
Tâches
Concepts
Compléments Visual Studio et compléments partagés