2016-12-01 7 views
0

私たちはかなり古いプロジェクトを持っています。ホスト(コンソールまたはWindowsサービス)はdllである "プラグイン"の束を読み込みます。その中にはナゲットのもの、3Dパーティーのもの、他のソリューションでコンパイルされたもの、手でコピーされたものなどがあります。そのうち約百人が何年も前に退職した男です。.NETどのアセンブリ参照を見つけるか

最近私はSystem.IO.FileLoadException, the infamous error 0x80131040です。 DLLの1つが別のDLLのバージョンを正しく読み込もうとしていませんでした。どのアセンブリがあるかを見つけるのに数時間かかりました。

私はフュージョンログを有効にしますが、すべてのそれは私に言った - これは、DLLのバージョン、それが探していたし、どちらそれが見つけた。..

実際に間違ったDLLを参照するDLLれている情報はありませんでした。..

ホスト名、つまりconsole.exeが表示されますが、参照先のdll名がでないのはです。

私は潜在的に..リフレクターを参照に見ていると、それらの全体の百を通過する、またはすべてのアセンブリをロードし、彼らのメタデータを回復しようとするための簡単なアプリを作成する..しかし、それは時間

を取ることができ誰かが特定のdllを名前で参照しているdllを見つけるためのより速い方法を知っていますか?

答えて

1

System.IO.FileLoadExceptionは、アセンブリが見つからないためにPublicKeyTokenを提供します。 プロジェクトのbinフォルダに移動して、公開鍵トークン

に等しいテキストを含むdllを検索してください
関連する問題