Share via


Checking for Memory Overwrites

 

The latest version of this topic can be found at Checking for Memory Overwrites.

If you get an access violation on a call to a heap manipulation function, it is possible that your program has corrupted the heap. A common symptom of this situation would be:

Access Violation in _searchseg  

The _heapchk function is available in both debug and release builds (Windows NT only) for verifying the integrity of the run time library heap. You can use _heapchk in much the same way as the AfxCheckMemory function to isolate a heap overwrite, for example:

if(_heapchk()!=_HEAPOK)  
   DebugBreak();  

If this function ever fails, you need to isolate at which point the heap was corrupted.

See Also

Fixing Release Build Problems