Voici les étapes complètes, adaptées de l'article de Stefan Timovski sur Comment créer une extension SQL Server Management Studio 18 (SSMS)
-
Installer Visual Studio 2017 avec Extensions Toolkit
Si vous n'êtes pas sûr de disposer de la boîte à outils des extensions, vous pouvez ouvrir le programme d'installation de Visual Studio et modifier votre installation actuelle pour vous assurer que les extensions sont installées
-
Créer un nouveau projet d'extension
Allez dans Fichier Nouveau projet (Ctrl + Maj + N )
Choisissez Extensibilité> Projet VIX
Si vous ne disposez pas de ces options, assurez-vous d'avoir effectué l'étape 1
-
Ajouter un nouvel élément de commande
Ajouter un nouvel élément (Ctrl + Maj + A )
Sélectionnez Extensibilité et juste à des fins de démonstration, saisissez une commande personnalisée
-
Déboguer dans Visual Studio
Le fichier de commandes ajoutera un élément de menu à Outils> Invoquer Command1 . Si vous appuyez sur le débogage, Visual Studio lancera une instance débogable, entièrement chargée avec votre extension actuelle. Appuyez sur lecture ou appuyez sur F5
La première fois peut prendre une minute pour démarrer, mais cela devrait aller plus vite par la suite
L'événement de clic géré est situé dans Command1 .cs>
Execute
, et vous pouvez ajouter des points d'arrêt.Voici la boîte de message de travail
-
Obtenir le chemin du fichier pour SSMS
Le chemin d'installation par défaut pour SSMS 18 doit être :
C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\Ssms.exe
Si ce n'est pas là, pour identifier l'emplacement de démarrage de n'importe quelle application, vous pouvez Maj + Clic droit sur l'icône de l'application et sélectionnez "Ouvrir l'emplacement du fichier"
-
Définir le lancement sur SSMS
Ouvrez les propriétés du projet dans VS (Alt + Entrée )
Accédez à Débogage> Démarrer le programme externe et collez dans le chemin
Supprimez les arguments de ligne de commande car ils ne s'appliquent plus à SSMS
-
Définir le déploiement de VSIX sur SSMS
Le sous-répertoire "Extensions" doit se trouver dans le même répertoire que SSMS. Ajoutez également un dossier supplémentaire avec le nom de votre projet comme celui-ci
C:\Program Files (x86)\Microsoft SQL Server Management Studio 18\Common7\IDE\Extensions\VSIXProject1
Accédez à VSIX> et sélectionnez "Copier le contenu VSIX à l'emplacement suivant "
-
Définir les autorisations
Enfin, pour appeler par programmation toutes les applications sur le lecteur C, vous aurez besoin de privilèges d'administrateur, vous devez donc ouvrir Visual Studio en mode administrateur. Vous pouvez le faire en faisant un clic droit sur l'application comme ceci
-
Appuyez sur Exécuter et déboguer
Presto! Blamo ! Votre extension devrait maintenant exécuter SSMS
Autres lectures
Historiquement, chaque extension devait être sur liste blanche, mais selon les notes de version de SSMS 18, un grand changement (pour le mieux) est
Les ID de package ne sont plus nécessaires pour développer des extensions SSMS
Dans le passé, SSMS ne chargeait de manière sélective que les packages bien connus, obligeant ainsi les développeurs à enregistrer leur propre package. Ce n'est plus le cas.
Puisque SSMS 18 utilise le shell isolé de Visual Studio 2017 , une grande partie de la documentation du développeur d'extensions est disponible dans les documents d'extension de Visual Studio