Come è possibile stabilire se i puntatori danneggino un indirizzo di memoria?

Le informazioni contenute in questo argomento sono valide per:

Edizione

Visual Basic

C#

F#

C++

Web Developer

Express

Argomento non applicabile Argomento non applicabile Argomento non applicabile

Solo nativo

Argomento non applicabile

Pro, Premium e Ultimate

Argomento non applicabile Argomento non applicabile Argomento non applicabile

Solo nativo

Argomento non applicabile

Descrizione del problema

È probabile che uno dei puntatori stia danneggiando la memoria all'indirizzo 0x00408000. Come è possibile appurare cosa sta accadendo in tale posizione?

Soluzione

Controllare l'integrità della memoria heap

  • Il danneggiamento della memoria è principalmente causato dai problemi che si verificano nella memoria heap. Provare a utilizzare l'utilità per i flag globali (gflags.exe) o pageheap.exe. Vedere https://support.microsoft.com/kb/286470/it.

Per individuare i punti in cui l'indirizzo di memoria è modificato

  1. Impostare un punto di interruzione di dati all'indirizzo 0x00408000. Per ulteriori informazioni, vedere How to: Set a Data Breakpoint (Native Only).

  2. Quando si raggiunge un punto di interruzione, utilizzare la finestra Memoria per visualizzare il contenuto della memoria a partire dall'indirizzo 0x00408000. Per ulteriori informazioni, vedere Memory Windows.

Vedere anche

Concetti

Domande frequenti sul debug del codice nativo

Altre risorse

Debug del codice nativo