2012-03-16 4 views
6

アセンブリロードの問題をデバッグしているので、融合ログを調べています。時には彼らは私のことを混乱させます。なぜなら彼らは失敗を示すことから始まり、結局、私はそれがロードされると予想される場所からアセンブリがロードされると言うのです。このフュージョンログとは何ですか?

"操作が失敗しました"に続いて "ILアセンブリがロードされました..."とはどういう意味ですか?アセンブリをロードできなかったか、成功しましたか?

*** Assembly Binder Log Entry (2012-03-16 @ 10:25:14) *** 

The operation failed. 
Bind result: hr = 0x80070002. The system cannot find the file specified. 

Assembly manager loaded from: C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\clr.dll 
Running under executable C:\Program\MyCorp\MyApplication1.2.0.0\MyApplication.exe 
--- A detailed error log follows. 

=== Pre-bind state information === 
LOG: User = VIRTUALXP-63912\XPMUser 
LOG: DisplayName = MyCorp.MyApplication.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 
(Fully-specified) 
LOG: Appbase = file:///C:/Program/MyCorp/MyApplication1.2.0.0/ 
LOG: Initial PrivatePath = NULL 
LOG: Dynamic Base = NULL 
LOG: Cache Base = NULL 
LOG: AppName = MyApplication.exe 
Calling assembly : MyApplication, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null. 
=== 
LOG: Start binding of native image MyCorp.MyApplication.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null. 
WRN: No matching native image found. 
LOG: IL assembly loaded from C:\Program\MyCorp\MyApplication1.2.0.0\MyCorp.MyApplication.Core.dll. 

私はまた、プログラムがcan't load file or assembly SomeAssembly or one of its dependenciesを述べる出た場合でも、アセンブリのためにこの種のログを参照してください。問題のアセンブリは、上記と同様のログエントリに従ってロードされます。

これは、アセンブリのネイティブ依存関係が見つかりませんでしたか?どのネイティブ依存関係が失敗したかを確認するためにログ設定を変更する必要がありますか?

+0

をサブフォルダこれは全体のログですか? – Oded

+0

これは、特定のdllのログです。このdllは、管理されたdllです(これは、MyCorp.MyApplication.Coreのネイティブイメージが見つかったので、見つかりました。 –

+0

"依存関係の1つ"のバインディングに失敗したことを示す別のログエントリを探します。SysInternalsのProcMonは、 –

答えて

0

CLRがdllを検索して最初に失敗してから成功するためだと思います。 assemblyresolveイベントにバインドして、動作方法を確認できます。私はそれがGACに最初の検索覚えていれば その後、ローカルフォルダは、...

See documentation here.

関連する問題