メモリ上書きのチェック
更新 : 2007 年 11 月
ヒープ操作関数の呼び出しでアクセス違反が発生した場合は、プログラムがヒープを壊している可能性があります。この状況に共通する現象は、次のとおりです。
Access Violation in _searchseg
_heapchk 関数は、デバッグ ビルドとリリース ビルドの両方 (Windows NT のみ) で、ランタイム ライブラリ ヒープの整合性の検証に使用できます。AfxCheckMemory 関数とほぼ同じで方法で _heapchk を使用し、ヒープの上書きを特定できます。たとえば、次のように記述します。
if(_heapchk()!=_HEAPOK)
DebugBreak();
この関数でエラーが発生する場合は、ヒープが壊れた場所を特定する必要があります。