2011-08-15 15 views
5

クライアント/サーバーアプリケーションを.NETに移植する作業を進めています。現在のCバージョンのサーバーには、ソケット接続をリッスンするプロセス(Windowsサービス)の実行可能ファイルが1つあります。リスナーがソケット接続を受け入れると、その接続を処理するための新しいプロセスが生成されます。ハンドラアプリケーションは独立した実行可能ファイルです。ソケットを新しいAppDomainに渡す

このアプリケーションの.NETバージョンでは、1つの実行可能ファイル/プロセスが必要です。リスナーは、(各クライアントに割り当てられた「ワーカープロセス」を分離するために)接続ごとに新しいAppDomainを作成する必要があります。リスナーアプリドメインからワーカーアプリドメインにソケットを渡すにはどうすればよいですか?

ありがとうございます!

+0

分離によっては、それぞれのドメインでGetDataとSetDataを使用することができますが、オブジェクトをマーシャリングする必要があります。まだ何か試しましたか? –

+0

私は自分の質問に対する答えを見つけたと思う。 DuplicateAndCloseメソッドは、別のプロセスにソケットを渡していなくても使用できます。リスナーは、独自のプロセスIDを渡すことができます。 [リンク](http://blogs.msdn.com/b/malarch/archive/2005/12/14/503884.aspx) –

+0

涼しく、うまくいきたいです。そうであれば、あなた自身の質問に答えてそれを受け入れるべきです。 –

答えて

4

私は自分の質問に対する答えを見つけたと思います。 DuplicateAndCloseメソッドは、別のプロセスにソケットを渡していなくても使用できます。リスナーは、独自のプロセスIDをDuplicateAndCloseに渡すことができます。

ソリューションは、ここで説明されて:あなたは別のプロセスを切ったソケットを渡したい場合は http://blogs.msdn.com/b/malarch/archive/2005/12/14/503884.aspx

これも動作します。

関連する問題