• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:有効でないウインドウハンドルを指定したSendMessageは安全?で)

無効なウインドウハンドルを指定したSendMessageの安全性は?

このQ&Aのポイント
  • あるサブウインドウに貼り付けたプログレスバー・コントロールに数値を送信する際、ウインドウが破棄された場合にはSendMessageは安全ではない。
  • コントロールのハンドルの有効性を直前で判定しても、破棄される可能性があるため意味がない。
  • ウインドウを隠す方法ではなく、破棄する方法が必要である。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

マイクロソフトのSendMessage仕様を記載しているホームページを見ても、「送信先が存在しない場合」の動作は記載されていないようです。 http://msdn.microsoft.com/ja-jp/library/cc411022.aspx しかし、SendMessage関数はSendMessage関数を実行するとメッセージキューを介さずに直接相手のウィンドウプロシージャを実行し、相手のウィンドウプロシージャが終了するまで制御が戻ってこなかったハズです。 よって、相手がいなかった場合はダンマリになるか、関数の戻り値で異常が返るかのどちらかになると思います。 すんなり、HIDEにしておくのが無難かと思います。

jacoby2200
質問者

お礼

回答ありがとうございます。 そうですか、やっぱり破棄はしない方が良さそうですね。 隠しにして、動作の保証を優先させたいと思います。 迅速なレスありがとうございました。またよろしくお願いします。

関連するQ&A