Possible reasons for assembly failing to load on production system?
-
07-03-2021 - |
Frage
Problem
Assembly is loaded just fine in development, fail to be loaded on production.
Details
The assemblies quickfix_net.dll
and quickfix_net_messages.dll
(Quickfix.NET API) are failing to load on production systems throwing the following exception:
System.Windows.Threading.Dispatcher: System.IO.FileNotFoundException: Could not load file or assembly 'quickfix_net.dll' or one of its dependencies. The specified module could not be found. File name: 'quickfix_net.dll'
My fix attempts
- Verified the assemblies exist next to the application EXE.
- Changed the target CPU from AnyCPU to x86.
- Signed Quickfix assemblies as x86 using
Corflags.exe
- Verified that there are no missing dependencies as well.
Question
What are the main differences between development and production systems that may cause such problem of assembly perfectly loaded on the first but fail to be loaded on the later?
Lösung
After signing the assemblies as 32BIT using the corflags.exe
, I checked for dependencies again, and found 2 system assemblies missing :
- msvcp100.dll
- msvcr100.dll