VC++6.0ダイアログベースで以下のようなプログラムを
組んだんですが、デバッグ時には動くのですが
リリース時にAccessViolationで落ちます
リリース時に落ちないようにするにはどうすればいいでしょうか?
VC++.netだと落ちずに動作します。

概要:ダイアログからスレッドを起動し、スレッドからダイアログへメッセージを
送信し、ダイアログの表示を変更する

ダイアログ側
onBtn(){
CThread *p = (CThread*)AfxBeginThread(RUNTIME_CLASS(CThread),0,0,CREATE_SUSPEND,NULL)
↓グローバル変数へウィンドウハンドルを渡す
g_hWnd = m_hWnd;
p->ResumeThread();
}

getMessage(){
ここでメッセージを受け取って処理
}

スレッド側
Run(){
SendMessage( ユーザー定義Msg, g_hWnd, 0, 0); ←一回は動作する
SendMessage( ユーザー定義Msg, g_hWnd, 0, 0); ←二回目でエラー

PostQuitMessage(0);
return CWinThread::Run();
}