Sto eseguendo il debug di un problema di caricamento dell'assieme, quindi sto esaminando i registri di fusione. A volte mi confondono perché iniziano a indicare un errore, poi alla fine dicono che il gruppo carica da dove mi aspetto che venga caricato.Che cosa dice questo log di Fusion?
Cosa significa "L'operazione non è riuscita" seguito da "Assemblaggio IL caricato da ..."? Non è riuscito a caricare l'assembly o è riuscito?
*** 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.
Vedo anche questo tipo di registro per un gruppo anche quando il programma esce affermando can't load file or assembly SomeAssembly or one of its dependencies
. L'assembly in questione viene caricato in base a una voce di registro simile alla precedente.
Ciò indica che non è stata trovata una dipendenza nativa dell'assieme? Devo modificare le impostazioni del registro per vedere quale dipendenza nativa non è riuscita o c'è qualcos'altro che posso fare?
È questo l'intero registro? Da quello che posso vedere non c'è stato alcun errore (dal momento che è stata trovata un'immagine nativa di 'MyCorp.MyApplication.Core', è stata caricata una versione gestita trovata. – Oded
Questo è il registro per una particolare dll. Questa dll è una dll gestita e si carica con successo per quanto ne so.Qual è il motivo per cui mi chiedo cosa sia "fallito" –
Cerca un'altra voce di registro che mostri un errore di binding per "una delle sue dipendenze". ProcMon di SysInternals può mostrarti che cerca DLL non gestita se questa è la causa Ignora "Nessuna immagine nativa trovata trovata", è normale: –