あるプログラムから別のプログラムにメッセージを渡す方法

StackOverflow https://stackoverflow.com/questions/607530

  •  03-07-2019
  •  | 
  •  

質問

同じマシン上の別のプログラムに整数を渡す必要がある.Net 3.0アプリケーションがあります。私はこれを行うためにWCFサービスを使用していましたが、ローカルボックスでサービスをホストしようとすると、ユーザー権利の問題に遭遇しました。この問題をどのように達成するかについての考えは大歓迎です。

ありがとう、

デイブ

役に立ちましたか?

解決

WCFは今でもここに行く方法です。

通常、同じマシン上のプロセス間通信では、名前付きパイプチャネルを使用します。これを使用していない場合は、実行してからホスティングのエラーを特定することをお勧めします。

両方のプログラムに処理中のメッセージループがあり、整数を送信している場合、P / Invokeレイヤーを介してSendMessageの呼び出しを使用することもできますが、それは、同等またはSendMessageが許可するものよりも小さい。大きなメッセージにはWCFのようなものが必要です。

他のヒント

.NET Remoting は方法ですプログラム間でメッセージを渡します。

どのようにホストしていましたか? httpを使用する非管理プログラムには、ポート(http.sys内)を使用する権限が必要であることに注意してください。これは、netsh(Vista)または(IIRC)httpcfg(XP)経由です。

たとえば、こちらをご覧ください。

WCF がその方法です。同じマシン通信で保護するには、 NetNamedPipeBinding を使用する必要があります。
WCFBindingsの詳細 https://msdn.microsoft.com /en-us/library/ms730879(v=vs.110).aspx

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top