タグ

2015年12月23日のブックマーク (3件)

  • プロセス間通信

    これまで、メッセージ送信の方法としてPostMessageとSendMessageの2種類が あることを説明しましたが、実はこの両方の関数には、 他のプロセスが作成したウインドウのハンドルを指定することもできます。 これはつまり、他のウインドウに自分が送りたいメッセージを送れるということなので、 メッセージを通じて対象となるウインドウを制御することや、データを送ることができます。 問題は、対象となるウインドウのハンドルをどうやって取得するかですが、 これはFindWindowを呼び出すのが最も簡単であると思われます。 FindWindowの引数から分かることですが、あるウインドウのハンドルを取得するには、 そのウインドウについての情報をある程度知っておかなければなりません。 たとえば、メモ帳のウインドウハンドルを取得しようと考えた場合、 ウインドウタイトルは開いているテキストによって変化し

  • Windows Programming Tips & Memos

    生の Windows API (および関連 API) を C/C++ で使用するために調べたことのメモおよび Tips 集です.随時追加します. Main:http://www5d.biglobe.ne.jp/~noocyte/Programming/Windows/WindowsTips.html Mirror:http://www.geocities.jp/iafuu/Programming/Windows/WindowsTips.html

  • スレッドとメッセージキュー

    ウインドウを表示するアプリケーションが正しく動作するためには、 メッセージループの存在が必要不可欠です。 メッセージループは、GetMessageがメッセージキューからメッセージを取得し、 DispatchMessageでウインドウプロシージャにメッセージを送るのが目的ですが、 全てのウインドウへのメッセージが1つのメッセージループで処理されるとは限りません。 たとえば、別スレッドで作成されたウインドウに対するメッセージは、 メインスレッドのメッセージループで取得することができません。 章は、こうした問題について考察するため、 メッセージキューをスレッドという角度から取り上げます。 スレッドは、コードの実行単位です。 つまり、実際にアプリケーションのコードを上から下へと処理していきます。 スレッドは複数存在することが可能で、 そのような場合はアプリケーションのコードが同時に実行されるよう