user142207 ha svolto un ottimo lavoro investigando su internals VS, io raccomando quella soluzione. Ho un altro modo in cui è stato inventato dal mio collega, Sergey S., che è molto utile:
di Windows: utilizzare un paio di funzioni ReadProcessMemory
/WriteProcessMemory
. Ha bisogno di un'applicazione stand-alone che chiama queste funzioni con un processo id bersaglio come:
dumper.exe <debugged process id> <memory_start_addr> <memory_length>
Questa applicazione può essere chiamato direttamente durante la sessione di debug VS (rispetto a Linux, che non ha tale possibilità). Possiamo acquisire l'indirizzo di memoria nella finestra di controllo, quindi passare l'indirizzo allo scaricatore e voilà. Come dice user22207 nel suo articolo, è molto utile in progetti ricompilati da molto tempo.
Linux/MacOS ha approcci diversi. Ad esempio: dalla console di gdb, usa la memoria di comando dei comandi. Questo comando può anche essere utilizzato direttamente durante la sessione di debug.
manca anche questo, sarebbe una bella componente aggiuntivo. – peterchen