Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Créez une carte de code pour suivre visuellement la pile des appels pendant le débogage. Vous pouvez prendre des notes sur la carte pour suivre ce que fait le code, afin de vous concentrer sur la recherche de bogues.
Pour plus d’informations sur les commandes et les actions que vous pouvez utiliser avec des cartes de code, consultez Parcourir et réorganiser les cartes de code.
Important
Vous pouvez créer des mappages de code uniquement dans Visual Studio Enterprise Edition.
Voici un aperçu rapide d’une carte de code :
Effectuer une cartographie de la pile des appels
Dans un projet Visual Studio Enterprise C#, Visual Basic, C++ ou JavaScript, commencez le débogage en sélectionnant Déboguer>Démarrer le débogage ou en appuyant sur F5.
Une fois que votre application entre en mode arrêt ou que vous effectuez un pas à pas dans une fonction, sélectionnez Déboguer>Carte de Code, ou appuyez sur Ctrl+Maj+`.
La pile des appels actuelle s’affiche en orange sur une nouvelle carte de code :
Le mappage de code est mis à jour automatiquement au fur et à mesure que vous poursuivez le débogage. La modification d’éléments de carte ou de disposition n’affecte pas le code de quelque manière que ce soit. N’hésitez pas à renommer, déplacer ou supprimer quoi que ce soit sur la carte.
Pour obtenir plus d’informations sur un élément, pointez dessus et examinez l’info-bulle de l’élément. Vous pouvez également sélectionner Légende dans la barre d’outils pour savoir ce que signifie chaque icône.
Note
Le message Le diagramme peut être basé sur une version antérieure du code en haut de la carte de code, ce qui signifie que le code a peut-être changé après la dernière mise à jour de la carte. Par exemple, un appel sur la carte n’existe peut-être plus dans le code. Fermez le message, puis essayez de reconstruire la solution avant de mettre à jour la carte.
Cartographier le code externe
Par défaut, seul votre propre code apparaît sur la carte. Pour afficher le code externe sur la carte :
Cliquez avec le bouton droit dans la fenêtre Pile des appels et sélectionnez Afficher le code externe :
Ou décochez la case Activer uniquement mon code dans Visual Studio :
Cette option est disponible dans le volet Outils (ou Déboguer) sous le >volet Options dans la section Tous les paramètres>Général :
Cette option est disponible dans la boîte de dialogue Outils (ou >) sous la section Débogage>général :
Contrôler la disposition de la carte
La modification de la disposition de la carte n’affecte pas le code d’une manière quelconque.
Pour contrôler la disposition de la carte, sélectionnez le menu Disposition dans la barre d’outils de la carte.
Dans le menu Disposition , vous pouvez :
- Modifiez la disposition par défaut.
- Arrêtez la réorganisation automatique de la carte en désélectionnant Disposition automatique lors du débogage.
- Réorganisez le mappage le moins possible lorsque vous ajoutez des éléments, en désélectionnant la disposition incrémentielle.
Prenez des notes sur le code
Vous pouvez ajouter des commentaires pour suivre ce qui se passe dans le code.
Pour ajouter un commentaire, cliquez avec le bouton droit dans le mappage de code, puis sélectionnez Modifier>un nouveau commentaire, puis tapez le commentaire.
Pour ajouter une nouvelle ligne dans un commentaire, appuyez sur Maj+Entrée.
Mettre à jour la carte avec la pile d’appels suivante
Lorsque vous exécutez votre application jusqu'au prochain point d’arrêt ou que vous entrez dans une fonction, la carte ajoute automatiquement de nouvelles piles d’appels.
Pour empêcher la carte d’ajouter automatiquement de nouvelles piles d’appels, sélectionnez
dans la barre d’outils de carte de code. Le schéma continue de souligner les piles d’appels existantes. Pour ajouter manuellement la pile des appels actuelle à la carte, appuyez sur Ctrl+Maj+`.
Ajouter du code associé à la carte
Maintenant que vous disposez d’une carte, en C# ou en Visual Basic, vous pouvez ajouter des éléments tels que des champs, des propriétés et d’autres méthodes pour suivre ce qui se passe dans le code.
Pour accéder à la définition d’une méthode dans le code, double-cliquez sur la méthode dans la carte, ou sélectionnez-la, puis appuyez sur F12, ou cliquez dessus avec le bouton droit, puis sélectionnez Atteindre la définition.
Pour ajouter des éléments que vous souhaitez suivre à la carte, cliquez avec le bouton droit sur une méthode et sélectionnez les éléments que vous souhaitez suivre. Les éléments ajoutés les plus récemment apparaissent en vert.
Note
Par défaut, l’ajout d’éléments à la carte ajoute également les nœuds de groupe parent tels que la classe, l’espace de noms et l’assembly. Vous pouvez désactiver et activer cette fonctionnalité en sélectionnant le bouton Inclure les parents dans la barre d’outils de la carte de code ou en appuyant sur Ctrl pendant l’ajout d’éléments.
Continuez à générer la carte pour voir plus de code.
Rechercher des bogues à l’aide de la carte
La visualisation de votre code peut vous aider à trouver des bogues plus rapidement. Par exemple, supposons que vous examinez un bogue dans une application de dessin. Lorsque vous dessinez une ligne et essayez de l’annuler, rien ne se passe jusqu’à ce que vous dessiniez une autre ligne.
Vous définissez donc des points d’arrêt dans les méthodes clear, undo et Repaint, démarrez le débogage et générez une carte comme celle-ci :
Vous remarquez que tous les gestes utilisateur sur la carte appellent Repaint, à l'exception de undo. Cela peut expliquer pourquoi undo ne fonctionne pas immédiatement.
Après avoir corrigé le bogue et continuez à exécuter l’application, la carte ajoute le nouvel appel à partir de undo à Repaint :
Partager la carte avec d’autres utilisateurs
Vous pouvez exporter une carte, l’envoyer à d’autres personnes avec Microsoft Outlook, l’enregistrer dans votre solution et la vérifier dans le contrôle de version.
Pour partager ou enregistrer la carte, utilisez Share dans la barre d’outils de la carte de code.