トップページ > 記事閲覧
Windowsのメッセージを使った処理をしたいのですが
名前:グレイト炒飯 日時: 2013/06/17 07:15

初めまして。 さて、DXライブラリではWindowsのメッセージ処理はProcessMessage()がやってくれる、ということなのですが、特定のメッセージが来た時にこの処理を実行するといったことは可能なのでしょうか? 具体的には、「Windowsプログラミング研究所」様で公開されているテトリスのプログラムのように、メインの処理スレッドと、特定条件での処理を行うスレッドがあり、その切り替えにミューテックスを使います。 特定条件の処理を行うまではメインのスレッドがミューテックスを持ち、特定条件時のスレッドはsleepしています。 特定条件を満たした時、メインスレッドがミューテックスをリリースして特定条件時スレッドに制御を渡します。 特定条件時の処理が済んだら、特定条件時スレッドがミューテックスを開放し、メインスレッドにミューテックスを取得するようメッセージを送ります。 このメッセージをメインスレッド側で受信する必要があるわけですが、ProcessMessage()を使っているとこのメッセージを受信させることができないように思います。 この場合は、メッセージ処理関数を自分で書くことになるのでしょうか?
メンテ

Page: 1 |

Re: Windowsのメッセージを使った処理をしたいのですが ( No.1 )
名前:Will 日時:2013/06/17 10:32

SetHookWinProc()でメッセージ処理のフック関数を登録することにより、 ProcessMessage内部で独自のメッセージ処理を行うことができます。 詳しい使い方はSetHookWinProcでググって下さい。
メンテ
Re: Windowsのメッセージを使った処理をしたいのですが ( No.2 )
名前:グレイト炒飯 日時:2013/06/17 17:48

ありがとうございます、その方法で解決できそうです。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存