1

アプリケーションによって実行時に参照されているアセンブリのバージョンを確認しようとしています。アセンブリが GAC にインストールされていることはわかっています。これは、MSI を介してインストールされたサードパーティの商用製品であり、実行時に一覧表示さgacutil /lれ、 の下のフォルダーにも表示されるためC:\Windows\Microsoft.NET\assembly\GAC_MSILです。

Process Explorerを使用して、参照されている DLL を下のペインに表示し、参照されているアセンブリを確認しています。参照されているアセンブリが にあることがわかりましたC:\Windows\assembly\tmp\NYIEPEO0\。Windows エクスプローラーでそのフォルダーを参照しようとすると (アプリケーションがまだ実行中で、参照されているアセンブリがまだ Process Explorer に表示されている場合)、存在しないかアクセスできないと表示されます。さらに、Process Explorer にはバージョン、説明などの詳細が表示されないため、アセンブリのバージョンを特定できません。

私の質問は次のとおりです。参照されているアセンブリが実際に存在する場所ではなく、「tmp」フォルダーの下にあるのはなぜですか(アセンブリのインストールに関係しているというこのようなソースを見たことがありますが、アセンブリはすでにインストールされています上記で指摘したように、正しい場所にある)、実行時にすべてのアセンブリが適切な場所から参照されるように、GAC でその動作を無効にすることはできますか?

4

0 に答える 0