Debugging Assembly Problems

Posted by ToM on 1. April 2009 under Debugging Tips |

If some of the components don’t load correctly and seem to do really nothing, you’ve a great chance that one or more of the required dependencies can’t be loaded.

Windows offers you a possibility to inspect what exactly happens when the assemblies are loaded (or not *g*)…The fusion log.

 

To enable the fusion log, create a directory to retrieve the log’s output, let’s say c:\fusionlog.

Now, several registry keys need to be set in order to enable the logging:

  • Set the path to your logfile directory in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion\LogPath (in our example c:\fusionlog)
  • Set HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion\LogFailures to 1
  • Optionally set HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion\ForceLog to 1
  • Optionally set HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion\LogResourceBinds to 1

There’s a tool called “Assembly Binding Log Viewer” available in the .NET Framework SDK, for more information look here.

Comments are closed.