Visual Studio refuse d'oublier les points d'arrêt?

216

Visual Studio se souvient des points d'arrêt des sessions de débogage précédentes, ce qui est génial.

Cependant, lorsque je débogue et que j'efface l'un de ces "anciens" points d'arrêt en cliquant dessus, il n'est supprimé que temporairement. Ce que je veux dire, c'est que la prochaine fois que je déboguerai, le point d'arrêt que je pensais avoir supprimé est de retour.

C'est super ennuyeux - y a-t-il un réglage pour qu'il ne fasse pas ça?

dan
la source
24
Si vous les supprimez une fois le débogueur arrêté, ils resteront définitivement.
dlev
2
rapport de bogue fermé "comme par conception" en 2009; explication de MS - connect.microsoft.com/VisualStudio/feedback/details/476744/…
zomf
1
Si vous avez la nouvelle version bêta de VS 2015, vous pouvez envoyer un froncement de sourcils. Peut-être qu'ils écouteront si nous le faisons tous.
jsuddsjr
cette URL de connexion ne fonctionne plus - mais je me souviens que c'était quelque chose à propos des threads - mais à quel point est-il difficile d'ajouter une option de clic droit "supprimer définitivement le point d'arrêt" quelle qu'en soit la raison ???
Simon_Weaver
1
Pourquoi ne proposent-ils pas simplement une option "Supprimer le point d'arrêt en attente " dans le menu contextuel du point d'arrêt? Ce n'est pas sorcier.
John

Réponses:

131

aller au Debugmenu puisDelete All Breakpoints Ctrl+Shift+F9

confitures
la source
39
Essayez ceci, sélectionnez l'élément de la barre d'outils Points d'arrêt dans la barre d'outils Déboguer. Cela fait apparaître la fenêtre Points d'arrêt. Depuis cette fenêtre, vous pouvez afficher tous les points d'arrêt dans l'application. Ici, vous sélectionnez et effacez le point d'arrêt en cliquant sur le bouton Supprimer de la barre d'outils du volet Points d'arrêt.
jams
merveilleux - touches de raccourci fonctionne en édition express (qui n'a aucun élément dans le menu).
fun_vit
20
pas bon quand je veux supprimer un seul point d'arrêt pas tous
andrew.fox
1
Cela ne résout pas le problème tout le temps. Je l'ai utilisé, et le point d'arrêt revient toujours .. C'est dans un endroit ennuyeux où je ne peux pas le dépasser avant d'avoir fini d'appuyer sur continuer plus de 50 fois.
Dinerdo
1
@Dinerdo Au lieu de le supprimer, vous pouvez essayer de le désactiver ou d'ajouter une condition qui n'est jamais vraie.
Tom Blodget
15

Le problème est que les points d'arrêt enfants de vos points d'arrêt persistent. Des points d'arrêt enfants sont créés (dans certaines situations) lors de la définition de points d'arrêt lors d'une session de débogage.

Un moyen infaillible de supprimer un point d'arrêt (et des enfants) consiste à le rechercher manuellement dans la fenêtre de point d'arrêt et à le supprimer de là. (Sélectionnez le nœud supérieur de l'entrée, appuyez sur Delete.)

Si vous exécutez une (ancienne) version de Visual Studio qui prend en charge les macros VBScript, vous pouvez exécuter la macro publiée ici (entre les sessions de débogage), pour supprimer les points d'arrêt enfants. Cela rendra la suppression des points d'arrêt en cliquant sur le glyphe un peu plus efficace et prévisible, mais cela continue d'être problématique et maladroit.

Protecteur un
la source
12

J'avais du mal à trouver la `` fenêtre BreakPoints '', alors voici le moyen rapide de l'ouvrir- ctrl+ alt+B

entrez la description de l'image ici


Ou vous pouvez manuellement aller dans 'Debug-> Windows-> Breakpoints' pour l'ouvrir.

entrez la description de l'image ici


Ou vous pouvez appuyer sur ctrl+ shift+ F9pour supprimer tous les points d'arrêt en même temps!

JerryGoyal
la source
9

Il y a quelques réponses ici, mais à mon avis, les actions proposées sont distrayantes à utiliser pendant le débogage (je ne veux pas perdre ma concentration).

Mon flux avec des points d'arrêt collants pendant les points d'arrêt est le suivant:

Pendant le débogage, désactivez le point d'arrêt au lieu de le supprimer.

Façons possibles de désactiver un point d'arrêt:

  • survolez avec le curseur et cliquez sur l'icône à deux cycles;
  • ou utilisez le menu contextuel dessus;
  • ou le raccourci clavier CTRL + F9 (pas Shift + CTRL + F9, car il efface tous les points d'arrêt).

Plus tard, pendant le développement, je supprime un point d'arrêt désactivé lorsque j'en vois un.

PS. Il est également recommandé de supprimer tous les points d'arrêt de temps en temps.

andrew.fox
la source
1
Si la désactivation fonctionne, je ne vois pas pourquoi les "points d'arrêt liés" par rapport aux "points d'arrêt en attente" comme décrit dans l'article ci-dessus (re: fermé par conception) est un problème insurmontable.
ItsAllABadJoke
3
  • Démarrez votre session de débogage avec un nombre minimal de fichiers ouverts, car vous déboguez les points d'arrêt indésirables s'afficheront et les fichiers contenant s'ouvriront dans de nouveaux onglets.
  • Mettez fin à la session de débogage et ouvrez la fenêtre des points d'arrêt (à partir de la barre d'outils de débogage, pour une raison quelconque, elle ne se trouve pas dans le menu Affichage).
  • Pour chaque fichier, entrez le nom du fichier dans la zone de recherche de la fenêtre des points d'arrêt et appuyez sur Entrée pour filtrer les points d'arrêt par fichier.
  • Vous pouvez ensuite cliquer sur chaque point d'arrêt dans la fenêtre pour voir où ils se trouvent dans le code et les supprimer si vous le souhaitez. Un peu fastidieux mais que la meilleure façon que j'ai trouvée pour se débarrasser de ces points d'arrêt fantômes indésirables ... Gestion des signets et des points d'arrêt .. Ces fonctions ont probablement été améliorées pour la dernière fois au cours du siècle dernier ...
pasx
la source
1

La plupart des points d'arrêt peuvent être supprimés pendant la session de débogage, mais certains sont bloqués (probablement un bogue dans Visual Studio).

Si vous souhaitez supprimer uniquement le point d'arrêt qui est bloqué, utilisez ensuite les fenêtres "Points d'arrêt" présentes dans le menu de débogage. Là, vous verrez probablement que votre point d'arrêt existe plusieurs fois pour la même ligne. Faites simplement un clic droit et supprimez-le.

Robert
la source
0

Une réponse alternative rapide à cette vieille question qui vient de me frapper avec Visual Studio 2017.

Si possible, il suffit de couper et coller le code avec le point d'arrêt dessus. Le point d'arrêt disparaît avec la coupe.

JH
la source
0

Accédez à débogage> fenêtres> points d'arrêt et recherchez des points d'arrêt et supprimez-les du volet.

comme il a été répondu ici

Hamed Mahdizadeh
la source
0

Je considère que c'est un défaut de conception, c'est très frustrant et quelque chose avec lequel nous devons vivre depuis longtemps. Nous l'avons frappé si souvent que cela devient la norme. Les solutions proposées jusqu'à présent fonctionnent vraiment.

Une meilleure solution serait de se réunir et de voter pour un changement sur la voix utilisateur de Visual Studio. Il semble que cela ait été enregistré plusieurs fois, nous devrions donc en choisir un pour voter.

https://visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/31123351-delete-disable-break-point- while-debugging-should

Ryan B
la source
0

Si vous déboguez une application Web et définissez un point d'arrêt dans Chrome, le code VS honorera ce point d'arrêt et ne vous laissera pas le supprimer. En d'autres termes, les points d'arrêt effectifs sont la somme des points d'arrêt définis dans VS Code et dans votre chrome. Et oui, il est parfois facile d'oublier que vous définissez un point d'arrêt dans Chrome et de vous perdre en essayant de comprendre comment le supprimer de VS Code.

Ouais.
la source