大規模な MFC ベースのアプリケーションと少数のマネージ (.NET) アドインとの統合に取り組んでいます。これらのアドインとの通信は、COM 経由で行われます。
これまでは、レジストリを使用して、これらのアドインをアプリケーションで (COM サーバーとして) 利用できるようにしてきました。しかし、現在、これを行うために、登録不要の COM 相互運用機能を使用しようとしています。
これらのアドインは、アプリケーションが実行されているディレクトリとは別のディレクトリ (理想的にはどこでも) に配置できるようにしたいと考えています。しかし、依存アセンブリを解決できないため、サーバー オブジェクトのインスタンス化で問題が発生しているようです。これは、COM サーバー DLL のディレクトリにも存在します。
「昔ながらの」COM 相互運用機能は、ターゲット アセンブリを読み込むときに LoadFrom コンテキストを使用してこれを処理しました。しかし、アクティベーション コンテキスト メカニズムはこれを行っていないようです。
これを機能させる方法を知っている人はいますか?モジュールの SxS マニフェストで依存アセンブリを識別できるかどうか、またはアクティベーション コンテキストを別の方法で作成できるかどうかは明らかではありません。
考えやヒントをありがとう!
ジェフ