DLL の新しいコピーをリモート サーバー上の GAC に展開しようとしていますが、現在実行中のプロセスに、置き換える DLL のコピーが読み込まれているかどうかを確認する必要があります。少なくともユーザーに伝えてください。
たとえば、Biztalk は、必要な DLL を最初に使用するときにロードするように見えます。その後、それらを置き換えると、ホスト インスタンスが再起動されるまで古いコピーがメモリに保持されます。これは、デプロイの一部として簡単に実行できます。
.NET を使用して、どのプロセスが GAC から特定の DLL をロードしたかを知る方法はありますか?
アップデート:
さらに調査すると、Process Explorer にはこの機能があり、別の Sysinternals ツールであるListDLLは、私がやりたいことを正確に実行することがわかりました。ListDLL をインクルードしてスクリーンスクレイピングする必要なく (ライセンス内で許可されている場合でも)、この機能をアプリケーションに複製したいので、彼らがどのようにそれを行うのか知りたいです。