Commencer à développer des extensions dans Visual Studio
Si vous n’avez jamais écrit d’extension Visual Studio auparavant, vous avez probablement des questions. Nous avons répertorié quelques-uns des plus courants ici. Si vous ne voyez pas les informations que vous recherchez, utilisez le bouton de commentaires en haut à droite de cette page pour demander ce que vous souhaitez.
Remarque
Cet article s’applique à Visual Studio sur Windows. Pour Visual Studio Code, consultez l'API d’extension Visual Studio Code.
Quel logiciel dois-je développer des extensions Visual Studio ?
Vous devez installer le Kit de développement logiciel (SDK) Visual Studio en plus de Visual Studio pour développer des extensions Visual Studio. Vous pouvez installer le Kit de développement logiciel (SDK) Visual Studio dans le cadre de l’installation régulière ou l’installer ultérieurement. Pour plus d’informations sur l’installation du Kit de développement logiciel (SDK) Visual Studio, consultez Installer le Kit de développement logiciel (SDK) Visual Studio.
Quels types de choses puis-je faire avec les extensions Visual Studio ?
Le ciel est la limite quand il s’agit d’imaginer différentes extensions Visual Studio. Bien sûr, la plupart des extensions ont quelque chose à voir avec l’écriture de code, mais cela n’a pas besoin d’être le cas. Voici quelques exemples de types d’extensions que vous pouvez générer :
Prise en charge des langages qui ne sont pas inclus dans Visual Studio, avec la coloration de syntaxe, IntelliSense, et la prise en charge du compilateur et du débogage.
Outils de productivité qui étendent l’expérience IDE principale avec davantage de modèles, de refactorisation de code, de nouvelles boîtes de dialogue ou de fenêtres d’outils.
Concepteurs spécifiques à un domaine pour des scénarios tels que la conception de données ou la prise en charge du cloud.
Pour obtenir des exemples d’extensions, consultez les Visual Studio Marketplace. De nombreuses extensions sont open source et la Place de marché inclut des liens vers leur dépôt GitHub.
Quelles fonctionnalités Visual Studio puis-je étendre ?
En théorie, vous pouvez étendre uniquement n’importe quelle partie de Visual Studio : menus, barres d’outils, commandes, fenêtres, solutions, projets, éditeurs, etc.
Dans la pratique, nous avons constaté que les fonctionnalités que la plupart des utilisateurs souhaitent étendre sont des commandes, des menus et des barres d’outils, des fenêtres, IntelliSense et des projets. Voici des liens vers les sections pertinentes :
Extension des menus et des commandes: ajoutez vos propres éléments aux menus et barres d’outils Visual Studio. Vous pouvez les utiliser pour lancer de nouvelles fonctionnalités Visual Studio ou vos propres applications d’assistance externe. Vous pouvez également fournir des raccourcis personnalisés pour vos éléments de menu.
Extension et personnalisation de l’outil Windows: étendre les fenêtres d’outils existantes ou créer vos propres fenêtres d’outils. Par exemple, vous pouvez ajouter de nouvelles propriétés à l'Propriétés, ou vous pouvez créer une fenêtre d’outil pour ajouter d’autres fonctionnalités.
Editor and Language Service Extensions: ajoutez vos propres personnalisations à IntelliSense fournie pour les langages Visual Studio, ou créez la prise en charge des nouveaux langages de programmation. Vous pouvez créer de nouvelles saisies semi-automatiques d’instructions, des suggestions et de nouvelles info-bulles pour QuickInfo. Avec les ampoules, vous pouvez ajouter des suggestions de refactorisation et des correctifs de code pour prendre en charge de nouveaux langages de programmation.
Quels sont les modèles de projet fournis par le VSSDK ?
Les deux principaux types d’extensions sont les extensions VSPackages et MEF. En général, les extensions VSPackage sont utilisées pour les extensions qui utilisent ou étendent des commandes, des fenêtres d’outils et des projets. Les extensions MEF sont utilisées pour étendre ou personnaliser l’éditeur Visual Studio.
Pour les extensions Visual C# et Visual Basic, le VSSDK fournit un modèle de projet VSIX vide que vous pouvez utiliser avec les nouveaux modèles d’élément qui créent des commandes de menu, des fenêtres d’outils et des extensions d’éditeur. Vous pouvez également utiliser ce modèle pour empaqueter des modèles de projet, des extraits de code et d’autres artefacts pour la distribution à d’autres utilisateurs.
Pour C++, l’Assistant VSPackage fournit le code permettant d’ajouter des commandes de menu, des fenêtres d’outils et des éditeurs personnalisés.
Les articles suivants vous montrent comment commencer à utiliser chaque type d’extension :
Commandes de menu : Création d’une extension avec une commande de menu
Fenêtres d’outils : Création d’une extension avec une fenêtre Outil
Extensions de l’éditeur : création d’une extension avec un modèle d’élément d’éditeur
VSPackages de base : création d’une extension avec un VSPackage
Modèle de projet VSIX : prise en main du modèle de projet VSIX
Comment obtenir mon extension pour ressembler à Visual Studio ?
Obtenez d’excellents conseils pour la conception de l’interface utilisateur pour votre extension dans Instructions relatives à l’expérience utilisateur visual Studio.
Où puis-je trouver des exemples de code VSSDK ?
Chacun des liens répertoriés dans la section précédente comporte des procédures pas à pas qui vous montrent comment implémenter des fonctionnalités spécifiques. Vous pouvez également trouver des exemples VSSDK open source sur GitHub sur exemples Visual Studio.
Comment distribuer mon extension ?
Vous pouvez installer votre extension sur un autre ordinateur ou l’envoyer à vos amis en tant que fichier .vsix, que vous installez en double-cliquant dessus. Pour plus d’informations sur les packages VSIX, consultez Shipping Visual Studio Extensions.
Vous pouvez également publier votre extension sur Visual Studio Marketplace, ce qui le rend visible par un grand nombre de clients Visual Studio. Pour obtenir un exemple d’empaquetage d’une extension sur la Place de marché, consultez procédure pas à pas : publication d’une extension Visual Studio. Pour plus d’informations sur ce que vous devez faire pour publier sur la Place de marché, consultez Produits et extensions pour Visual Studio.