1


1

C Win32にあるメッセージ専用ウィンドウ用のクラス/サンプルアプリケーションはありますか?

3 Answer


6


CreateWindowのドキュメントから:

_ _ hWndParent [入力]作成されるウィンドウの親ウィンドウまたは所有者ウィンドウのハンドル。 子ウィンドウまたは所有ウィンドウを作成するには、有効なウィンドウハンドルを指定してください。 このパラメータはポップアップウィンドウではオプションです。

Windows 2000 / XP:メッセージ専用ウィンドウを作成するには、HWND_MESSAGEまたは既存のメッセージ専用ウィンドウへのハンドルを指定します_ _

これは、目に見えないメッセージ専用ウィンドウを作成するための(おそらく過度に)派手な方法を示した記事です。http://www.codeguru.com/cpp/w-p/win32/tutorials/article.php/c12689


1


思い出すと、標準的な解決策は、通常どおりメッセージポンプ付きの基本的なスタイルのないウィンドウを作成することですが、ShowWindowを呼び出さないでください。 これにより、WM_QUERYENDSESSIONのようなすべてのウィンドウに送信される標準メッセージを受信して​​処理することができます。


0


メッセージ専用ウィンドウは、ウィンドウのメッセージをスレッドで処理する必要があるときに使用されますが、実際にはウィンドウを画面に表示したくない場合に使用します。

たとえば、Windowsタイマーを使用したいが、既存のUIウィンドウを持っていない場合は、ラッチを使用できます。