重複の可能性:
Delphi 2009:VistaでWindowsサービスとデスクトップアプリケーション間で通信するにはどうすればよいですか?
サーバーをWindowsサービスとして実行しています。サービスを制御し、その状態を表示するために、アプリケーションをトレイアイコンとして実行しています。サービスからアプリケーションにデータ(ログ文字列)を渡したいのですが。
これを行うための最良の方法は何ですか?
重複の可能性:
Delphi 2009:VistaでWindowsサービスとデスクトップアプリケーション間で通信するにはどうすればよいですか?
サーバーをWindowsサービスとして実行しています。サービスを制御し、その状態を表示するために、アプリケーションをトレイアイコンとして実行しています。サービスからアプリケーションにデータ(ログ文字列)を渡したいのですが。
これを行うための最良の方法は何ですか?
プロセス間通信には多くのオプションがあります。http://en.wikipedia.org/wiki/Inter-process_communication
私はHTTPとHTMLでソケットを使う傾向があります。このようにして、ブラウザを使用してサービスを制御できます。リモートでも。
ここでの最良のアプローチは、名前付きパイプに基づくIPCです。TCP / IPも非常に優れたソリューションですが、名前付きパイプよりも低速です。名前付きパイプは、LAN内のコンピューターでも機能します。
パケット指向で、すべての技術的な詳細を隠す私の実装を使用できます。ダウンロードは次の場所で入手できます:http ://www.cromis.net/blog/downloads/cromis-ipc
あらゆる種類のSOAP実装を使用します。これは、将来に向けて一定の拡張性を提供し、他の場所/アプリケーションから接続する機能を提供するのに十分な柔軟性を備えている必要があります。
Webサービスは良いオプションです。