Débogage et arrêt lors du changement de valeur d'une variable

Le
Yodaz
Bonjour,
Je cherche comment faire dans Visual Studio 2005 pour mettre une condition
d'arrêt sur un espion, en fonction de sa valeur.
J'ai trouvé comment faire pour mettre une condition sur un point d'arrêt,
mais cela ne correspond pas à ce dont j'ai besoin.

Pour donner un exemple, j'ai une liste d'objets, et je voudrais que le
débogueur s'arrête lorsque la propriété .Count de la liste vaut 0, ou que
la valeur de .Count change.

Cette fonctionnalité était présente dans VB6 (arrêter lorsque la valeur
change, si je me souviens bien) mais je ne la retrouve pas dans
Visual Studio 2005.

Est ce que quelqu'un peut m'éclairer ?

Merci d'avance.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilles TOURREAU [MVP]
Le #12140441
"Yodaz" news:47c68767$0$26658$
Bonjour,
Je cherche comment faire dans Visual Studio 2005 pour mettre une condition
d'arrêt sur un espion, en fonction de sa valeur.
J'ai trouvé comment faire pour mettre une condition sur un point d'arrêt,
mais cela ne correspond pas à ce dont j'ai besoin.

Pour donner un exemple, j'ai une liste d'objets, et je voudrais que le
débogueur s'arrête lorsque la propriété .Count de la liste vaut 0, ou que
la valeur de .Count change.

Cette fonctionnalité était présente dans VB6 (arrêter lorsque la valeur
change, si je me souviens bien) mais je ne la retrouve pas dans
Visual Studio 2005.

Est ce que quelqu'un peut m'éclairer ?

Merci d'avance.




Bonjour,

http://gilles.tourreau.fr/dotnet/visual_studio/vs2005_2008_aller_plus_loin_avec_le_debogueur_de_visual_studio.html
Chapitre : "Arrêter le débogueur selon une condition en utilisant Visual
Studio"

Cordialement

--
Gilles TOURREAU - MVP C#
E-Mail :
Site Web : http://gilles.tourreau.fr

P.O.S - Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Yodaz
Le #12140371
Gilles TOURREAU [MVP] a écrit :

Bonjour,

http://gilles.tourreau.fr/dotnet/visual_studio/vs2005_2008_aller_plus_loin_avec_le_debogueur_de_visual_studio.html

Chapitre : "Arrêter le débogueur selon une condition en utilisant Visual
Studio"

Cordialement




Bonjour et merci pour votre réponse, mais ce n'est pas exactement ce que je
cherche, en fait je voudrais que ce soit la condition qui déclenche l'arrêt de
l'exécution, et non le point d'arrêt.
Je veux pouvoir spécifier l'arrêt de l'exécution sans mettre de point d'arrêt,
uniquement sur la condition de changement de valeur de la variable, comme dans
VB6.
Clark [MVP CRM]
Le #12140351
Bonjour
Très bon article ma foi!
Merci
"Gilles TOURREAU [MVP]" news:
"Yodaz" news:47c68767$0$26658$
Bonjour,
Je cherche comment faire dans Visual Studio 2005 pour mettre une
condition
d'arrêt sur un espion, en fonction de sa valeur.
J'ai trouvé comment faire pour mettre une condition sur un point d'arrêt,
mais cela ne correspond pas à ce dont j'ai besoin.

Pour donner un exemple, j'ai une liste d'objets, et je voudrais que le
débogueur s'arrête lorsque la propriété .Count de la liste vaut 0, ou que
la valeur de .Count change.

Cette fonctionnalité était présente dans VB6 (arrêter lorsque la valeur
change, si je me souviens bien) mais je ne la retrouve pas dans
Visual Studio 2005.

Est ce que quelqu'un peut m'éclairer ?

Merci d'avance.




Bonjour,

http://gilles.tourreau.fr/dotnet/visual_studio/vs2005_2008_aller_plus_loin_avec_le_debogueur_de_visual_studio.html
Chapitre : "Arrêter le débogueur selon une condition en utilisant Visual
Studio"

Cordialement

--
Gilles TOURREAU - MVP C#
E-Mail :
Site Web : http://gilles.tourreau.fr

P.O.S - Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr




Gilles TOURREAU [MVP]
Le #12140341
"Yodaz" news:47c7d58b$0$6708$
Gilles TOURREAU [MVP] a écrit :

Bonjour,

http://gilles.tourreau.fr/dotnet/visual_studio/vs2005_2008_aller_plus_loin_avec_le_debogueur_de_visual_studio.html
Chapitre : "Arrêter le débogueur selon une condition en utilisant Visual
Studio"

Cordialement




Bonjour et merci pour votre réponse, mais ce n'est pas exactement ce que
je
cherche, en fait je voudrais que ce soit la condition qui déclenche
l'arrêt de
l'exécution, et non le point d'arrêt.
Je veux pouvoir spécifier l'arrêt de l'exécution sans mettre de point
d'arrêt,
uniquement sur la condition de changement de valeur de la variable, comme
dans
VB6.




Bonjour,

Dans ce cas lisez le chapitre : "Arrêter le débogueur selon une condition
(Par programmation)."

Cordialement

--
Gilles TOURREAU - MVP C#
E-Mail :
Site Web : http://gilles.tourreau.fr

P.O.S - Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Yodaz
Le #12140301
Gilles TOURREAU [MVP] a écrit :


Bonjour,

Dans ce cas lisez le chapitre : "Arrêter le débogueur selon une
condition (Par programmation)."

Cordialement



Ca ne correspond pas à mon problème : je ne sais pas à quel moment de
l'exécution la propriété .Count va prendre la valeur pour laquelle je veux
arrêter l'exécution, je ne peux donc pas placer le .Break() a un endroit
judicieux, et c'est pour ça que je cherche un moyen de créer un "espion
conditionnel".
Gilles TOURREAU [MVP]
Le #12140181
"Yodaz" news:47cbb30e$0$4905$
Gilles TOURREAU [MVP] a écrit :


Bonjour,

Dans ce cas lisez le chapitre : "Arrêter le débogueur selon une condition
(Par programmation)."

Cordialement



Ca ne correspond pas à mon problème : je ne sais pas à quel moment de
l'exécution la propriété .Count va prendre la valeur pour laquelle je veux
arrêter l'exécution, je ne peux donc pas placer le .Break() a un endroit
judicieux, et c'est pour ça que je cherche un moyen de créer un "espion
conditionnel".




Bonjour,

Dans ce cas dans l'article :
http://gilles.tourreau.fr/dotnet/visual_studio/vs2005_2008_aller_plus_loin_avec_le_debogueur_de_visual_studio.html

Chapitre "Arrêter le débogueur selon une condition en utilisant Visual
Studio."
Paragraphe : "Arrêter le débogueur selon le changement d'une expression".

Cordialement

--
Gilles TOURREAU - MVP C#
E-Mail :
Site Web : http://gilles.tourreau.fr

P.O.S - Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Yodaz
Le #12140131
Gilles TOURREAU [MVP] a écrit :


Bonjour,

Dans ce cas dans l'article :
http://gilles.tourreau.fr/dotnet/visual_studio/vs2005_2008_aller_plus_loin_avec_le_debogueur_de_visual_studio.html


Chapitre "Arrêter le débogueur selon une condition en utilisant Visual
Studio."
Paragraphe : "Arrêter le débogueur selon le changement d'une expression".

Cordialement




Bonjour,
Je pense que je me suis mal exprimé ou mal fait comprendre. J'ai lu avec
attention votre article (qui est très clair au demeurant), et dans le chapitre
"Arrêter le débogueur selon le changement d'une expression" on peut lire ceci

"Ajouter un point d'arrêt au niveau de la condition "if (i == 500)" et
spécifiez une condition comme précédemment sur celui-ci. Saisissez "b" dans la
condition et sélectionnez "a changé"

Si je comprends bien cette phrase, cela signifie qu'a chaque passage sur le
point d'arrêt, la variable b est évaluée, et l'exécution s'arrête si la valeur
de b change.

Ce n'est pas le comportement que je souhaite reproduire. J'avais dans l'idée
de reproduire le comportement du débogueur de Visual Basic 6, à savoir un
"espion conditionnel" : on ajoute un espion sur une variable, la valeur de la
variable est évaluée en permanence, et l'exécution s'arrête automatiquement
dès que la valeur de la variable change, * sans qu'il ne soit nécessaire de
placer de point d'arrêt*. Ce comportement est j'imagine couteux en terme de
performance, cependant cela s'avérait être un gain de temps appréciable.
edt992 Hors ligne
Le #25283012
Le jeudi 28 Février 2008 à 11:05 par Yodaz :
Bonjour,
Je cherche comment faire dans Visual Studio 2005 pour mettre une condition
d'arrêt sur un espion, en fonction de sa valeur.
J'ai trouvé comment faire pour mettre une condition sur un point
d'arrêt,
mais cela ne correspond pas à ce dont j'ai besoin.

Pour donner un exemple, j'ai une liste d'objets, et je voudrais que le
débogueur s'arrête lorsque la propriété .Count de la
liste vaut 0, ou que
la valeur de .Count change.

Cette fonctionnalité était présente dans VB6
(arrêter lorsque la valeur
change, si je me souviens bien) mais je ne la retrouve pas dans
Visual Studio 2005.

Est ce que quelqu'un peut m'éclairer ?

Merci d'avance.


Bonjour,

Toujours personne n'a de solution à ce problème ? J'ai aussi le même soucis (besoin de mettre un point d'arrêt quand une variable globale prend une certaine valeur) mais je n'ai pas trouvé comment faire avec Visual Studio. Avec VB6 c'était facile "Ajouter un espion" puis cocher "Arret si la valeur est vraie", mais en VB.Net, pas moyen de trouver

Je re-précise qu'il ne s'agit pas de mettre une condition à un point d'arret, ça ne répond pas au besoin. Dans le cas présent, je ne sais pas où ma variable prend la valeur souhaitée, donc je ne peux pas placer de point d'arret.

Merci d'avance.
Publicité
Poster une réponse
Anonyme