IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual Studio Discussion :

Pause dans un programme lorsqu'une variable change de valeur.


Sujet :

Visual Studio

  1. #1
    Rédacteur

    Avatar de Jérôme Lambert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2003
    Messages
    4 451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 451
    Points : 14 357
    Points
    14 357
    Par défaut Pause dans un programme lorsqu'une variable change de valeur.
    Salut,

    J'ai une colle

    J'aimerais savoir si il est possible d'utiliser le debugger de Visual Studio pour qu'il fasse une pause dans un programme lorsque l'état d'une variable change. Je ne parle pas de mettre une condition sur un breakpoint. J'aimerais pouvoir écrire une condition telle que : "Si ma variable A de type int passe à 2, tu t'arrêtes là où le changement s'est produit.".

    Des idées ?

    Jérôme.
    Jérôme Lambert
    Développeur, Architecte, Rédacteur & Fan technologies Microsoft
    Ma boite informatique | Mon profil LinkedIn

  2. #2
    Membre chevronné Avatar de LooserBoy
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    1 085
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 1 085
    Points : 1 976
    Points
    1 976
    Par défaut
    Jamais trouvé malgré des recherches approfondies...
    Ma solution:
    Tu recherches toutes les occurences de ta variable dans ton code et tu y mets un breakpoint.

    [EDIT]Euh... en relisant, je me suis rendu compte que je ne t'avais pas vraiment compris et j'ai eu une idée: suite à chaque ligne d'affectation, tu testes la valeur de celle-ci et si ta valeur est celle attendue, tu peux faire le traitement que tu veux (pause, exception, ecriture console, etc...)[/EDIT]
    Vu sur un paquet de cigarettes: "Fumer peut entrainer une mort lente et douloureuse"
    - Vivre aussi... Ce n'est pas forcément moins douloureux et c'est même beaucoup plus lent...

  3. #3
    Rédacteur

    Avatar de Jérôme Lambert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2003
    Messages
    4 451
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 451
    Points : 14 357
    Points
    14 357
    Par défaut
    Il me semble aussi que ce n'est pas possible.

    Pour ta proposition, ce n'est pas possible car je travaille avec DataSet bindé à un formulaire et j'aurais aimé être notifié lorsqu'une cellule bien précise change de valeur.
    Jérôme Lambert
    Développeur, Architecte, Rédacteur & Fan technologies Microsoft
    Ma boite informatique | Mon profil LinkedIn

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 44
    Points : 27
    Points
    27
    Par défaut
    En faisant quelques recherches sur le sujet, j'ai trouvé cette page qui explique le problème :

    http://blogs.msdn.com/greggm/archive...30/124161.aspx

  5. #5
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    Si c'est juste pour faire un débug, tu peux toujours utiliser l'encapsulation

    Avant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private _maVariable As Integer
    Après

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Private _maVariableEncapsule As Integer
     
    Private Property _maVariable As Integer
    Get
        Return _maVariableEncapsule 
    End Get
    Set(ByVal Value As Integer)
        _maVariableEncapsule = Value
        If _maVariableEncapsule = 2 Then
            ' BreakPoint
        End If
    End Set

  6. #6
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669

Discussions similaires

  1. Mettre une pause dans un programme
    Par PNL dans le forum Général Java
    Réponses: 12
    Dernier message: 28/01/2016, 00h54
  2. [Débutant] comment savoir si une variable change de valeur
    Par lou87 dans le forum C#
    Réponses: 6
    Dernier message: 30/03/2012, 10h25
  3. Réponses: 9
    Dernier message: 18/12/2009, 00h36
  4. [DEBUTANT] Evenement lorsqu'une variable change de valeur
    Par erigoal dans le forum Windows Forms
    Réponses: 11
    Dernier message: 25/05/2009, 00h03
  5. Faire une pause dans le programme
    Par shinobi dans le forum Access
    Réponses: 6
    Dernier message: 13/06/2005, 16h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo