2009-02-06 25 views
7

Perché il debugger integrato è così ... appena funzionale? Non riesco a vedere il contenuto di un oggetto in memoria. Ad esempio, sto lavorando con le bitmap e mi piacerebbe vederle in memoria. Ho bisogno di un debugger migliore per questo? Se è così sono interessato alle raccomandazioni. Niente di troppo potente come un disassemblatore, solo il debugger.Visual Studio C++ Debugger: nessun dump esadecimale?

+0

Ho trascorso 3 ore alla ricerca di informazioni di base su come leggere le variabili locali in windbg e visual studio. Non riesco a trovare nulla che funzioni. Non riesco a trovare alcuna fonte affidabile di informazioni. Non è niente di buono come GDB, dove è possibile visualizzare tutto e la documentazione è davvero chiara e semplice. – Owl

risposta

27

Non ho mai trovato che sia "a malapena funzionale". VS ti disassembla di default quando non riesce a trovare la fonte, ed è piuttosto facile arrivare alla visualizzazione della memoria. Debug-> Windows -> Memoria. Digita "questo" nella casella Indirizzo: per ottenere la memoria dell'oggetto corrente. Per visualizzare un membro specifico digita "& this-> member_name". Salterà direttamente al primo byte.

+0

E quanto è bello quando la memoria non viene visualizzata in quel menu, proprio quando ne hai davvero bisogno e sì, ho Abilitato il debug a livello di indirizzo attivato on ... – nus

+0

Sta eseguendo un programma C++ dal suo progetto sotto il debugger? Non si presenterà in situazioni in cui non ha senso. –

1

VS2005 ha una scheda "memoria" che fornirebbe byte di memoria. Non so esattamente come convincerlo a evidenziare blocchi di esagoni per poterti dire quali variabili sono quali però.

1

Debug | Windows | La memoria ti consente di guardare qualsiasi area della memoria desiderata (soggetto a limitazioni di processo/accesso). Questo è in VS2005. Potrebbe essere una struttura di menu leggermente diversa in altre versioni.

+0

Utilizzando vs 2008 qui. Grazie comunque. – Zombies

+0

È lo stesso nel 2013, quindi sono sicuro che sia lo stesso nel 2008 – TankorSmash

2

Debug | Windows | Memoria | Memory1-4. Inserisci l'indirizzo del blocco di memoria che vuoi vedere nell'indirizzo. È probabilmente l'opzione di menu più difficile che tu possa mai tentare di eseguire con il tuo mouse (vedrai ...).

Nelle versioni precedenti di VS, se si desidera esaminare il contenuto di una variabile, è necessario determinare l'indirizzo della variabile, in genere ho utilizzato la finestra di controllo.

Tuttavia, nelle versioni più recenti, è spesso possibile digitare semplicemente il nome della variabile come Indirizzo, proprio come si farebbe in una finestra di controllo.

0

Non so se va bene, ma una rapida ricerca su Google per "memoria di visualizzazione del debugger come bitmap" è stata impostata su Bitmap Memory Debugger, che è stata progettata per essere utilizzata insieme a un altro debugger come Visual Studio o WinDbg.

Problemi correlati