MFCアプリケーションがそれ自体をきれいに閉じるための適切な方法は何ですか?
Mike
質問する
13295 次
5 に答える
14
AfxGetMainWnd()->PostMessage(WM_CLOSE);
于 2008-08-18T12:04:20.240 に答える
11
MFC アプリケーションをプログラムで終了する
void ExitMFCApp()
{
// same as double-clicking on main window close box
ASSERT(AfxGetMainWnd() != NULL);
AfxGetMainWnd()->SendMessage(WM_CLOSE);
}
于 2012-01-07T10:23:40.803 に答える
4
@Mike の回答をサポートするために、このメソッドを使用する理由は、正しいシャットダウン シーケンスをトリガーするためです。ドキュメントが終了前に保存を要求したり、終了をキャンセルしたりする可能性があるため、MDI/SDI アプリケーションでは特に重要です。
@Matt Noguchi、あなたの方法はこのシーケンスを回避します(これは望ましい効果かもしれませんが、通常の分解を短絡している場合はおそらく問題が発生します.
于 2008-08-18T14:11:43.260 に答える
4
PostQuitMessage( [exit code] );
于 2008-08-18T16:08:33.167 に答える
1
ダイアログベースのアプリケーションの場合は、EndDialog() 関数を呼び出して実行できます。
SDI/MDI ベースのアプリケーションの場合は、DestroyWindow を呼び出すことができます。ただし、その前に、自分でクリーンアップを行う必要があります (ドキュメントを閉じる、メモリとリソースの割り当てを解除する、作成された追加のウィンドウを破棄するなど)。
于 2008-09-18T10:23:26.777 に答える