Debugger stoppen wenn sich ein Variablenwert ändert

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Debugger stoppen wenn sich ein Variablenwert ändert

    Hi,
    ich suche eine Möglichkeit, wie ich den Debugger dazu bringen kann eine bestimmte Variable (in einem Array) zu überwachen und zu stoppen, wenn sich dieser Wert ändert. In VisualBasic 6 war das kein Problem, aber in Visual Studio kann ich zwar eine (Schnell-)Überwachung hinzufügen, aber die zeigt mir nur Werte an wenn der Debugger gestoppt ist und überwacht den Wert nicht dynamisch während des Programmablaufs.

    Ich habe ein Problem in einem zweidimensionalen Array, dort wird eine bestimmte Zelle während des Programmablaufs auf einmal geändert und ich finde die Stelle nicht wo das passiert. ?(

    Danke im Voraus
    Sascha
    Hallo picoflop,
    danke erst mal für den Tip, aber das hilft mir noch nicht richtig weiter.

    Mein Problem ist, das ich nicht weiß wo innerhalb von mehreren hundert Codezeilen sich der Variablenwert ändert. Dem Haltepunkt kann ich ja eine Bedingung verpassen, aber wo im Code platziere ich ihn, wenn ich nicht weiß wo der Fehler liegt?

    In vb6 war das total easy:

    Einfach einen Überwachungspunkt hinzufügen und wenn sich diese Variable ändert hält der Debugger automatisch in der entsprechenden Codezeile an.
    Zieh Dir die Variable(n) beim Lauf in das Überwachen-Fenster und steppe die Prozedur durch.
    Wenn sich der Wert ändert, wird die Variable / ihr Wert rot angezeigt.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich habe es jetzt mit dem Vorschlag von RofFromGermany probiert und nach viel klickern die Stelle gefunden an der etwas schiefläuft.
    Ich verstehe trotzdem nicht, wo die Funktion aus vb6 hin ist, das der Debugger beim Ändern eines überwachten Variablenwertes stoppt. Das sollte doch eigentlich eine Basisfähigkeit eines Debuggers sein, oder?

    Danke auf jeden Fall!!
    Kann sein, das das unter .NET nicht funktioniert.
    In C++ geht das, da kann ich einen Speicherbereich überwachen, ob sich was ändert.
    Im nativ .NET gibt es ja keine Pointer. :S
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!