複数のサービス コンポーネントで構成されるCOM+ アプリケーションがあります。
それらの 1 つは、必要に応じて dll から型をインスタンス化します Activator.CreateInstance(pluginType, args);
。この型は、サービス対象のコンポーネント自体ではなく、コンポーネントが認識している特定のインターフェイスの実装のみを含んでいます。
インスタンス化自体に問題はありません。問題は、dll が によってロックされているdllhost.exe
ことです。可能であれば、COM+ アプリケーションをシャットダウンせずに置き換えられるようにしたいと考えています。
COM+ アプリをシャットダウンせずに dll のロックを解除することはできますか?
または別の観点から、プログラムでdllをアンロードしてロックを解除する方法はありますか?
注: dll は、残りの dll と共に COM+ アプリケーションのルート ディレクトリにあります。