Cómo averiguar si los punteros dañan una dirección de memoria
Este tema se aplica a:
Edición |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
Sólo para código nativo |
||||
Pro, Premium y Ultimate |
Sólo para código nativo |
Descripción del problema
Parece que uno de los punteros está dañando la memoria en la dirección 0x00408000. ¿Cómo se puede averiguar lo que está ocurriendo allí?
Soluciones
Compruebe si el montón está dañado
- La mayoría de los daños en la memoria se deben en realidad a que el montón está dañado. Pruebe a usar la utilidad de marcas global (gflags.exe) o pageheap.exe. Vea https://support.microsoft.com/default.aspx?scid=kb;es-es;286470.
Para averiguar dónde se ha modificado la dirección de la memoria
Establezca un punto de interrupción de datos en 0x00408000. Para obtener más información, vea Cómo: Establecer un punto de interrupción de datos (Sólo nativo).
Cuando alcance el punto de interrupción, utilice la ventana Memoria para ver el contenido de la memoria a partir de la dirección 0x00408000. Para obtener más información, vea Memoria (Ventana).
Vea también
Conceptos
Preguntas más frecuentes sobre la depuración de código nativo