wie mit dem debugger einen speicherauszug anzeigen?
-
ich bin gerade dabei mein prog zu debuggen und würde gern einen
speicherauszug von z.b. 1mb ab der pointeradresse einer variablen im programm
sehen. blos wie krieg ich das hin? hab schon versucht die pointervariable zu den zu überwachenden ausdrücken hinzuzufügen und dann die option "speicherauszug" gewählt, aber er macht nichts.
wie kann ich denn beliebige speicherdumps des von meinem prog reservierten speichers anzeigen?
er zeigt immer nur eine linie mit max. 255x18 werten an und ich hätts gern schön formatiert wie bei einem hex-editor.[ Dieser Beitrag wurde am 06.05.2003 um 20:09 Uhr von tenim editiert. ]
-
Der Debugger hat doch nen CPU-Fenster, Das kannste meines wissens nach auch Speicherdumps anzeigen lassen, ich sitz allerdings grad an nem "builder-losen" rechner, drum kann ichs nich genau checken.
Falls das nich geht, schreib dir doch einfach ne kleine Klasse, die dir nen HexDump in nem Fenster anzeigt....
.
-
ja, das cpu-fenster kann dups anzeigen, allerdings weiss ich nicht wie ich
die startadresse aus dem pointer bekomme um diese dann direkt im cpu-fenster einzugeben.[ Dieser Beitrag wurde am 07.05.2003 um 14:07 Uhr von tenim editiert. ]
-
Kann ich jetzt nich ganz nachvollziehen, Wenn du beim debuggen im code-fenster mit der maus auf ne variable gehst, wird ihr wert angezeigt, so auf bei nem pointer, oder im inspect oder watch fenster
.
-
Also die Startadresse bekommst du, indem du nen Breakpoint dort setzt, wo du den Pointer auf den Speicher zeigen lässt.
z.B.
char *temp=new char[5];
Jetzt öffnest du das CPU-Fenster. Dort gehst du mit F8 solange im Code weiter bis zur Zeile (ca. 5-7 mal F8):
mov [blabla], eax
Jetzt kannst du im Register eax deine Speicher-Anfangsadresse ablesen. Links unten im "Speicher-Fenster" kannst du jetzt bequem per Rechts-Klick zu der Adresse gehen!
-
danke, funktioniert. hat mir sehr geholfen.