【GUI】wxWidgets(旧wxWindows) その5【サイザー】 (960レス)
【GUI】wxWidgets(旧wxWindows) その5【サイザー】 http://mevius.5ch.net/test/read.cgi/tech/1270793556/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
208: デフォルトの名無しさん [] 2011/08/11(木) 06:56:31.32 自作のTestApp(wxWidgets製)は起動時に渡されたパスを読み込んで処理を するとして、既に起動しているTestAppがあれば、そのTestAppにパスを引き 渡して自分は死ぬ(多重起動しない)、という動作をしたいです。 Winの場合、EnumWindowsでトップレベルウィンドウでTestAppを探し、 WM_COPYDATAをSendMessageで投げMSWWindowProcで受ける、 という方法を採っていますが、この辺のニーズは常にあるだろうし、 もっと楽なやり方があるんじゃないかと思ってます。 こういう方法の方が楽、とかありましたら教えてください。 と http://mevius.5ch.net/test/read.cgi/tech/1270793556/208
210: 208 [sage] 2011/08/11(木) 20:27:39.52 >>209 コメントありがとう。 でもMutexだと多重起動のチェックには使えるけど、 「既に起動している別プロセスへ任意のデータを引き渡す」 って処理には使えなく無いですか? http://mevius.5ch.net/test/read.cgi/tech/1270793556/210
217: 208 [sage] 2011/08/12(金) 21:25:55.39 なんかいっぱい回答もらえた。ありがとうございます。 誤解を生んで申し訳ないんだけど、多重起動の禁止だけじゃなくて、 データを引き渡すってところまでがやりたいことなんです。 >>211 ・メモリマップファイル ・共有メモリ 公式ドキュメントだけ読んで無いと思っていたんですが、 改めて調べたら5年前にパッチとして提出されてました。 「理由は言わないけど却下」と問答無用でRejectされてましたが、 普通に使えました(なんで却下されたんだろう……) ・TCP/IP ちょっと大掛かりですが、確かにこれだとwxWidgetsのクラスのみで クロスプラットフォームにいけますね。 ・DDE/OLE/ActiveX MSが意図しているアプリ間通信にはこれを使うべきなんですかね。 クロスプラットフォームからはかけ離れますが。 http://mevius.5ch.net/test/read.cgi/tech/1270793556/217
218: 208 [sage] 2011/08/12(金) 22:02:35.23 ・ウィンドウメッセージ はい。最初に書いたとおり、これは把握済です。 ただ、全トップレベルウィンドウを調べるwxWidgetsの関数って 無いですよね?(MS側のAPIはあるけど) >>213 ・起動済アプリを殺して自分が前面に出る タスクバーに収納されていたり表に出ていたり、というアプリにしているので、 起動済のアプリのそれらの状態を把握するのにちょっと手間がかかりますね。 表示状態のコピーが不要なら確かに比較的手っ取り早いですが。 >>214 ・作業ファイルにデータ書き込み&排他制御 大量のデータ通信をアプリ間でやるわけじゃないので、 手っ取り早く汎用性も高くwxWidgetsだけで完結しますね。 しかもクロスプラットフォームで安定している。なるほど。 皆さん色々な案の提示、どうもありがとうございました。 http://mevius.5ch.net/test/read.cgi/tech/1270793556/218
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.582s*