Retrieving the Fusion log


style="FONT-SIZE: 10pt; COLOR: #00007f; FONT-FAMILY: Arial">More from the dev
that owns the loader…


style="FONT-SIZE: 10pt; COLOR: #00007f; FONT-FAMILY: Arial"> 


style="FONT-SIZE: 10pt; COLOR: #00007f; FONT-FAMILY: Arial">If the exception
message isn’t enough for you to determine what the problem is, try getting the
Fusion log.  It will describe the
binding failure (if this is due to an assembly binding failure, instead of a
loading failure after the file is found). 
Usually, the exception will include a Fusion log. style="mso-spacerun: yes">  If not, to get the log: run
fuslogvw.exe, click on ‘Log Failures’. 
If this is an ASP.NET or .NET Windows service app, select the “Custom”
option, and in regedit, set [HKLM\Software\Microsoft\Fusion\LogPath] to point to
some directory (like c:\mylogs, not c:\) style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">. style="FONT-SIZE: 10pt; COLOR: #00007f; FONT-FAMILY: Arial"> style="mso-spacerun: yes">  If you need to log all binds, not just
failing ones, set [HKLM\Software\Microsoft\Fusion\ForceLog] as a DWORD value, to
1.  Then, re-run the process. 
Next, click ‘Refresh’ in fuslogvw, and a line should appear for each binding
failure (or for each bind, if ForceLog is set).  Double-click on the line
for this exception, and a web page should come up with the Fusion
log. />


style="FONT-SIZE: 10pt; COLOR: #00007f; FONT-FAMILY: Arial"> 


style="FONT-SIZE: 10pt; COLOR: #00007f; FONT-FAMILY: Arial">If the file was
found, it was loaded from the last path probed in the log (or from the GAC, if
there is no path probed).

Comments (2)

  1. Adam Hill says:

    Cool! Between you and Chris Brume I am learning at least as much as I did from Don Box’s book 🙂

    I have a question about the loader though. When moving projects to a test server that *only* involve code behind (no aspx changes) I was using the "rename the surrent dll to xxx.dll_old and put the new dll in" trick, but occasionally I get weird error messages about it not finding the *old* dll.

    How is the loader figuring this out? If I make a copy of the dll then *copy over* the current dll with the new one. Everything is hunky-dory

    Am smoking crack or is there a resonable explanation?

    Keep the geekage!

    adam…

Skip to main content