私は現在、COM経由でC++プログラム(pre-.NET)に機能を公開するC#で書かれた.NETクラスライブラリを持っています。C#でCOMオートメーションサーバーを作成する
メインアプリケーションのアドレス空間を解放するために、ライブラリをプロセス外に移動する必要があります(画像処理アプリケーションであり、大きな画像がアドレス空間を使い果たします)。私は自分のVB6の日から "OLEオートメーションサーバー"を作成できることを覚えています。オブジェクトが作成/破棄されると、OSは自動的にサーバー.exeを起動および停止します。これは私たちにとって完璧なようです:CLSCTX_INPROC_SERVERの代わりにCLSCTX_LOCAL_SERVERを使ってCoCreateInstanceを呼び出す点を除いて、クライアントで何も変わらないことがわかる限り、何も変わりません。
C#でこのようなアウトプロセスサーバーを作成するにはどうすればよいですか?それに関するオンライン情報がない、または私の用語がオフ/古いです!
私はこれがサポートされていなかったことを一点の結論に達しましたが、私は避難所」どこに明示されていても見えません。私は、CoRegisterClassObjectにC#COMオブジェクトのファクトリを登録するためにインタプリタを試しましたが、動作させることはありませんでした。他の誰かが幸運を持っていれば好奇心が強い! –
ここで私の答えをチェックしてください:http://stackoverflow.com/questions/24724784/com-interop-with-ipc-in-c-sharp/24732010#24732010 –