29 mars 2024

initiation aux Extensions pour Visual Studio

Ce tutoriel est juste une petite approche pour créer vos propres extensions pour Visual Studio. Inutile de vouloir en mettre plein la vue pour au final embrouiller tout le monde. J’utilise encore pour quelques semaines en production la version Visual Studio 2013 #bientôt2015.

Dans une premier temps il vous faut installer le Visual Studio 2013 SDK ainsi vous pourrez créer une extension « Visual Studio Package » :

Visual Studio Package
Un assistant de 7 étapes s’ouvrira automatiquement vous demandant par exemple dans quel langage souhaitez vous développer votre extensions (C++, C# ou VB)  . Juste, à l’étape 3/7 je vous invite à sélectionner au moins un des choix proposé. ainsi le SDK vous mâchera bien le travail en créant plusieurs fichier nécessaire pour bien démarrer avec votre première extension:

Visual Studio Package Wizard

Comment se présente notre solution

explorateur de solution du vspackage

Et bien à ce stade, sans avoir rien fait, vous pouvez déjà tester votre extension ! Visual Studio va lancer une « instance expérimentale » et vous retrouverez dans le menu Tools votre première Extension ! Enjoy!!

instance experimental de visual studio

Au revoir et à bientôt 🙂 !

 

le fichier VSCT

Si on regarde de plus près ce fichier .VSCT , on observe une arborescence XML contenant des MENUS, GROUPS (visuellement séparé par deux lignes) et les BUTTONS (auquel sera associé les BITMAP)

Une guid est nécessaire pour toutes commandes qui sera ajouté dans Visual Studio, c’est dans le fichier Guids.cs que vous trouverez le guid qui y est déclaré et utilisé dans ce VSCT.

guid="guidVSPackage1CmdSet" id="MyMenuGroup" priority="0x0600">

De plus vous remarquerez un champ id qui est codifié IDM_VS_MENU_TOOLS, ici il stipule que notre extension se trouvera dans le menu TOOLS .

MSDN liste l’ensemble de ces variables : GUIDs and IDs of Visual Studio Menus

Enfin le paramètre priority qui détermine la position du GROUP dans le MENU, exemple 0x000 placera votre groupe au début du menu, 0x100 en seconde position etc…

 La partie code

Si vous ouvrez maintenant le fichier *Package.cs vous trouverez dans la méthode d’initialisation la partie qui crée la commande de votre bouton et la méthode MenuItemCallback dans laquelle vous retrouverez le code qui affiche votre jolie MessageBox !

Et voilà, Visual Studio est à vous !

Par exemple afficher un message dans la fenêtre de sortie :

var dte = (DTE2)GetService(typeof(DTE));
var outputWindow = dte.ToolWindows.OutputWindow;

var outputWindowPane = outputWindow.OutputWindowPanes.Add("-------------------");
outputWindowPane.OutputString("Hello word");

 

et personnellement, une chose qui me gonflait à la création d’un nouveau projet est la création des dossiers : J’ai donc fait ma propre extension en 5 min ! Voici à quoi elle me sert :

Create My Folders

Et vous pouvez la retrouver ici : Extension CreateMyFolders pour Visual Studio

Alors faites vous plaisir, faites nous plaisir !

Laisser un commentaire