掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
スレッド処理について (ID:58614)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>OnCancel は「フレームワークによって呼び出される」関数なので、これを >自分で呼び出すのは大いに間違っています。 これは確かにそうなのですが、 >こういう場合は EndDialog を使う。 これも危険。 スレッド毎にCHandleMapというクラスがHWNDとCWnd*の関係を管理しています。 サブスレッド内でEndDialogを使うとDestroyWindowが呼ばれますが、 サブスレッドのCHandleMapには該当するCWnd*がない。 メインスレッドのCHandleMapには既に破棄されたHWNDをもつCWnd*が存在する。 と言う理由で不都合が生じる可能性があります。 だからメインスレッドにメッセージをポストして、メインスレッド側で DestroyWindowしてもらうのが確実です。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.