0

次の方法でアプリケーションとやり取りする Windows サービスを整理する必要があります。

アプリケーションはメッセージを生成し、何らかの方法でこのメッセージを実行中のサービスに送信し (実際には質問があります。どのように? ソケット? その他?)、サービスはこのメッセージに対していくつかの作業を行います。

アプリケーションが何らかの中間層 (メッセージをパラメーターとして受け取り、それをサービスに送信する実行可能アプリケーション) を使用する可能性があります。

では、私のサービスはどのようにアプリケーションとやり取りできるのでしょうか?

4

4 に答える 4

1

簡単な答え: WCF over TCP バインディングを使用します。ここに例があります。 http://www.codeproject.com/Articles/14493/WCF-Basic-Client-Server

于 2012-06-15T12:57:24.847 に答える
1

いくつかの提案:

  • Windows サービスで WCF サービスをホストします。詳細な例はここにあります。バインディング (Http、Tcp、名前付きパイプなど) は呼び出し元のアプリケーションに依存し、すべてがシームレスに機能します。WCF は Microsoft の統合プログラミング モデルであるため、これが推奨されるアプローチです。

  • .NET 2.0 以前に制限されている場合、Windows サービスは、アプリケーションからの「メッセージ」をスキャンするためのポーリング メカニズムを実装できます。たとえば、アプリケーションは、Windows サービスによって監視されているデータベースに新しいレコードを挿入できます。

お役に立てれば。

于 2012-06-15T13:01:36.300 に答える
0

すでに述べたものに別のオプションを追加するだけです。私は同様のシナリオでMSMQを使用しました。

于 2012-06-15T13:06:12.633 に答える
0

シナリオについてもう少し説明する必要があります。

メッセージの受け渡しは一方向のみですか、それとも双方向ですか? インタラクションの頻度は?両方のアプリケーションが同じ環境にありますか? 彼らはネットワークを介してやり取りする必要がありますか?

この問題にはさまざまな解決策があります: シンプルなファイル、ソケット、データベース、Windows レジストリを使用する...

于 2012-06-18T16:13:50.360 に答える