プロセス間通信のためにWindowsクライアントまで、フルのC#(.純2.0)
質問
そんなければいけなかったIPC Windowsます。現在の開発をしているペアプログラムは、標準的なGUI/CLIアプリをwindowsのサービスです。アプリののサービスしなければならない。なので、と仮定して、通信は地元のみのうえで、適切なコミュニケーション方法この二つのプロセス?
が最高の定義としてより強固に以下のエラーがないのperformantものが最も簡単。
コード例は非常に歓迎でん:-)
注意思っていたからに使い、標準的なTCPソケット、名前付きパイプ、またはその他の通信手段のみです。
よろしく!
解決
IPCます。純を採用することで実現でき:
WCF
名前付きパイプを使用 があります。純3.0 以上です。
コード例
- のクラス、WCF NetNamedPipeBinding 使用できるプロセス間通信で実行するのと全く同じです。にMSDN documentaionこのクラスを含むコードサンプルを覆うこのシナリオ http://msdn.microsoft.com/en-us/library/system.servicemodel.netnamedpipebinding.aspx
リモ
元のIPCの枠組みの発売です。純1.0です。と思いリモが積極的に開発において、より積極的に取り組めるよWCFく
コード例
プロセス間通信経由でリモ -使用tcpチャンネル
資源
- GenuineChannels、販売、リモツールキットを含む共有メモリチャンネル http://www.genuinechannels.com/Index.aspx
- インゴランマー用, 書の最終版.純リモ帳 します。純リモメインメニューからツール
Win32RPCを使用csharptest-net RpcLibrary
また、プロジェクトですが、最近はそのままにポケットWin32版の図書館が作成した。netクラスライブラリに使用できる地域およびリモートRPC
プロジェクトのホームページ: http://csharptest.net/projects/rpclibrary/
MSDN参考文献:
- どのようrpc作品: http://technet.microsoft.com/en-us/library/cc738291(v=ws.10)となります。aspx
- RPC機能 http://msdn.microsoft.com/en-us/library/aa378623(v=VS.85).aspx
また、googleのプロトコルバッファrpcクライアントを図書館 https://code.google.com/p/protobuf-csharp-rpc/
WM_COPYDATA
のための完全性を取得することも可能で利用WIN32の方法に WM_COPYDATA メッセージ。使いく前に、このメソッドです。純1.1を単一のインスタンス申込開ファイルを複数のファイルの窓からは以下のように変更しました。
資源
ソケット
カスタムプロトコル(にく)
他のヒント
地元だけに"感謝の心"をもって利用する名前付きパイプ.を回避オーバーヘッドのTCPとなのですが、ここでは(少なくともします。益として効率的に取得することができなも良するためのAPIです。
しておりますので限られます。純2.0WCFしかできないオプションになります。できます。純リモの共有メモリとして配下の通信機構とアプリのドメインで実行するのと全く同じです。このアプローチで簡単に入れプロセスの異なる機械に置き換えて共有メモリ-プロトコルネットワークプロトコルです。
標準の方法でのコミュニケーションをwindowsのサービスはサービスの利用制御コードです。Windowsサービスを受けられるコードを0-255です。0-127は予約制です。128-255の範囲で使用できるカスタムコマンド.
が必要な場合は送複雑なオブジェクトのサービスのご利用データベースのxmlファイルtcp,httpなど。以外の送信制御コマンド区分コマンドのように再構成プロセスでどこの制御コードを使用すること。
が追加機能のご利用などに照会サービスです。見Windowsサービスの文書は、apiに含まれています。
あなたの最善の策は、WCF.ることができまを作成サービスのホストをwindowsのサービスに曝露されたインタフェースのGUIアプリケーションを摂取することができ.WCFごとの話につ名前付きパイプを選択する、またはから選択できますその他の通信protocalのようなTCP,HTTPなど。使用WCFお支援ツールのご利用情報です。
たいと思います。くださいrebukeい場合もありがんセマフォ(または複数のセマフォの使用により、初歩的なコミュニケーションとは何か