다음을 통해 공유


포인터가 메모리 주소를 손상시키는지 어떻게 알 수 있습니까?

업데이트: 2007년 11월

이 항목은 다음 언어에 적용됩니다.

Edition

Visual Basic

C#

C++

Web Developer

Express

항목이 적용되지 않음 항목이 적용되지 않음

네이티브 전용

항목이 적용되지 않음

Standard

항목이 적용되지 않음 항목이 적용되지 않음

네이티브 전용

항목이 적용되지 않음

Pro 및 Team

항목이 적용되지 않음 항목이 적용되지 않음

네이티브 전용

항목이 적용되지 않음

표의 범례:

항목이 적용됨

해당

항목이 적용되지 않음

해당 없음

항목이 적용되지만 명령은 기본적으로 숨겨짐

명령은 기본적으로 숨겨져 있습니다.

문제 설명

포인터 하나가 0x00408000 주소의 메모리를 손상시키고 있는 것 같습니다. 어떻게 알아 낼 수 있습니까?

해결책

힙 손상 확인

  • 대부분의 메모리 손상은 실제로 힙 손상으로 인해 발생합니다. 전역 플래그 유틸리티(gflags.exe) 또는 pageheap.exe를 사용해 보십시오. 자세한 내용은 https://support.microsoft.com/kb/286470/ko을 참조하십시오.

메모리 주소가 수정된 위치를 찾으려면

  1. 0x00408000에 데이터 중단점을 설정합니다. 자세한 내용은 방법: 데이터 중단점 설정(네이티브 전용)을 참조하십시오.

  2. 중단점이 적중되면 메모리 창을 사용하여 0x00408000에서 시작하는 메모리 내용을 검토합니다. 자세한 내용은 메모리 창을 참조하십시오.

참고 항목

개념

네이티브 코드 디버깅 FAQ

기타 리소스

네이티브 코드 디버깅