単純にボタンをおしたらダイアログを表示するだけのプログラムを作りました。
-----------------
CXXXDlg dlg; // CXXXDlgはクラスウィザードで自動的に作成されたもので、中身は何も無しです。
dlg.DoModal();
-----------------
ボタンクリック→ダイアログを閉じる、操作を連続して行うとメモリがどんどん消費していきます。(マウス自動操作プログラムを使用して、1秒で表示・閉じるを繰り返す)
メモリ使用量はタスクマネージャにて確認しています。
原因や解決方法を教えてください。
http://forums.belution.com/ja/vc/000/281/57s.shtml
[00028157](SET)] GDIオブジェクト数
GDIオブジェクト数が増えていくようであれば
Windowsでごくふつうに発生する挙動のようです。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/jap...
MSDN ライブラリ サイト移行に関する重要なお知らせ
ダイアログを閉じるところで、dlg.EndDialog() を呼び出すようにしてください。
モーダルダイアログを作成した際は、このメソッドで処理を完了させる必要があります。(CDialog::EndDialogのヘルプにも書いてあります)
ダイアログの終了はOnOK()にて行っております。
CDialog::OnOK()の内部にてEndDialog(IDOK)を実行していたと思います。
http://pc5.2ch.net/tech/kako/1063/10630/1063029371.html#R75
★初心者にVisual C++を教えるスレ★ Part8
http://pc5.2ch.net/tech/kako/1063/10630/1063029371.html#R77
★初心者にVisual C++を教えるスレ★ Part8
それっぽいのを見つけましたが、どうでしょう。
どうもこの情報で正解のようですね。
ただ、増加のペースは格段に落ちましたが、まだ徐々に増えます。
↓ここも同じ情報がありました。
http://forums.belution.com/ja/vc/000/309/05.shtml
明快な解決策はないようですね。
GDIオブジェクト数を確認しましたが、特に増加していく事はありませんでした。