Delphi win32 アプリケーションで .NET Remoting インターフェイスを使用することは可能ですか (実行可能ですか)?
.NET アプリケーションと Delphi win32 アプリケーション間の通信が必要なため、パイプの反対側では .NET リモート処理がネイティブになります。
サードパーティのライブラリを使用せずに、両端で可能な限りネイティブに近い他のソリューションはありますか? アプリケーションは、それぞれ別の Windows マシンで実行されます。
それらは異なるマシンで実行されているため、ネットワーク通信を使用する必要があります。SOAPは一般的な通信形式であり、.NetとDelphiwin32の両方で簡単に作成できます。しかし、SOAP =XML=遅い。
私の会社では、RemObjects SDKリモーティングフレームワークを使用しています:http: //www.remobjectssdk.com/
インターフェイスの作成は非常に簡単で、.Net / Delphi / PHP / c ++ / whateverのコードを生成し、SOAPもサポートしますが、速度(!)にはバイナリ形式を使用します。
.NET 以外の Delphi exe からのリモート処理を使用すると、非常に苦痛になります。.NET アプリが実行されていることがわかっていない場合は、COM のアクティブ化などのプロセスがあるため、COM 相互運用が最も簡単な答えになります。さまざまなマシンがあるという事実は事態を複雑にしますが、DCOM が存在し、動作します (私はただし、.NET および Delphi エンドポイントでテストしました)。
.NET アプリが(おそらくサービスとして) 実行されていることがわかっている場合は、さまざまな代替手段を検討できます。
HttpListener
.NET サーバーで使用)ServiceHost
SOAP (おそらく.NET 側でWCF を使用)Delphi win23 と .Net はどちらも、COM オブジェクトを適切にサポートしています。チェックする価値のあるオプションです。
このトピックに関する解決策に関する最近の記事を見つけました: http://www.codeproject.com/Articles/852750/NET-and-Delphi-Inter-Process-Communication-via-Nam
これまでのところ、どのプラットフォームとも通信するための最良の方法は、Sockets を使用することです。内部の場合は、PIPES または MAPPED メモリを好みます。