Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I find out which missing DLL is making my .NET application crash on startup?

When dependencies on 3rd party assemblies are added to a typical .NET application it's very easy to forget to add them to the installer. This problem tends to reveal itself only after the application is installed, and in the form of a crash on startup with little helpful information readily available.

What are the best tools and techniques to find out which assemblies need to be added to the installer?

like image 932
GraemeF Avatar asked Sep 29 '09 08:09

GraemeF


1 Answers

Fully automated builds help reduce the human component and therefore the error. If it's automatically built every time, you know every build will be the same, so once you have it working once, it's always going to work.

We use tools like MSBuild and CruiseControl.net

If you're looking for tools that help your work out the cause of the crash, take a log at the Assembly binding (Fusion) log viewer (or fuslogvw). If you start it up before you start your app, set the log file location and turn full logging on it will report any attempts to bind assemblies, and list any failures.

like image 151
Simon P Stevens Avatar answered Sep 18 '22 07:09

Simon P Stevens