2011-01-13 17 views
2

実行時にロードされた参照先のdllのミステリーバージョンのミスマッチがあります。以下のようなデバッグ.NETアセンブリバインディング別名dllが使用されている理由とその理由を確認する

エラー:

は、ファイルまたはアセンブリXまたはその依存関係の1つをロードできませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。 (HRESULTからの例外:0x80131040)

アセンブリバインディングをデバッグする方法はありますか。言い換えれば

、どのように私はロードされたアセンブリに関する次の詳細を知ることができます。

  • バージョン
  • 場所
  • ロード(私のコード、別の.dllを、原因は何/ ...知るためにそこにあるだけで、他のすべてについて)
  • まあ、...

答えて

3

Assembly Binding Log Viewer(別名融合ログビューア、fuslogvw.exバージョン、カルチャ、公開キートークン)

  • アセンブリ(組立
  • にアセンブリの完全な名前をロードしようとしているどのようなプロセス

    • :e)のような問題これらの種類のために有用なデータを示していますそれはパスがあなたがすべてのバインドを記録したり、単に障害をバインドすることができますアセンブリ

    用プローブした負荷

  • を引き起こしています。

    fuslogvw.exeには、任意のVSコマンドプロンプトから直接アクセスする必要があります。

  • +0

    +1「融合ログビューア」は私が投稿に行ったものです: – abatishchev

    +0

    確かに、それは私が探していたものです。 – Bertvan

    +0

    Visual Studio 2010 Expressコマンドプロンプトからは使用できません。 – knb

    2

    Chrisと完全に同意します。アセンブリバインディングログビューアは、必要なすべての情報を提供する必要があります。また、WinDbg + SOS.dllを使用することもできます。ほとんどの場合、デバッグに使用されますが、できるだけ多くの情報を知る必要がある場合には、非常に便利です。 あなたを止めることができる唯一の問題は、VSデバッガのような素敵なUIを持っていないということです。

    幸い!

    +0

    WinDbgもお試しください、ありがとう – Bertvan

    関連する問題