2009-06-03 5 views
2

Windows CE 5デバイス上で実行されているすべてのアプリケーションで取得できるイベントをブロードキャストする必要があります。Windows CEでクロスプロセスの通信に最適なメカニズムは何ですか?

これまでにこれをしていないのですが、私が考えていないものがあれば人々がどのようなテクニックを提案するかを知ることに興味があります。

このイベントを受信する必要があるアプリケーションはすべて、.NET Compact Frameworkベースなので、「管理専用」ソリューションを検討することができます。

答えて

6

についてはこちらを参照してください。 Windows CEでのIPCの4つのオプションここではCFソリューションに焦点を当てます。

  1. ソケットを使用してください。シンクの存在について知る必要のあるイベントソースとして、これは痛みです。それは確かに私の最も好きな選択肢であり、私は決して近くにそれを使用します。
  2. 名前付きシステムイベント(a-la CreateEvent API)。これは、 "this is on"のような単純なブール型イベントに対して機能します。 CEは、イベント(SetEventData)に32ビットの値を関連付けることもできます。管理対象実装の場合、see this blog entry(実際のクラスはin the SDFです)。
  3. メモリマップファイル。私がいくつかの顧客プロジェクトで使用したSDF has an implementationはかなりうまくテストされています。いつか私はそれを使用する方法についてのブログ投稿を行うべきですが、あなたはスマートであり、ドキュメントからそれを理解する可能性があります。
  4. ポイントツーポイントメッセージキュー。これらはCE固有のものですが、クールな方法です。カーネルはそれらを多くのシステムに使用します。彼らは非常に速くて堅牢です。再度、the SDF has an implementationMSDN has an article on usageですが、MSDNコードにはSDFが修正されているバグがいくつかあることに注意してください。
+0

こんにちは、Windows MobileでSetEvent()が利用できないことを確認したいと思います。ありがとうございました。 –

+0

'SetEventData'はWinMoを含むすべてのWindows CEプラットフォームで利用できます – ctacke

1

私が見たソリューションのほとんどは、カスタムメッセージングプロトコルを使用しています。

.Netソケットも使用されています。

コンパクトなフレームワーク3.5にはWCFがありますが、制限があり、それが信頼できないとのフィードバックがかなりありました。

ほとんどのメカニズムの最大の問題は、シリアル化のバージョン管理です。あなたが本当に持っている

:ので、ここでは再びですが、私はそれを見つけることができません - ここでは、ニュースグループ、ブログ、何か -

は、私はこのどこかに答えました誓うCF 3.5

関連する問題