One of the most common issues/questions that has customers reaching out to
support is the issue of "bitness"
DotImage contains a lot of unmanaged code, and this means we have x86 and x64
specific builds/DLLs, and the ability to target AnyCPU is not directly
To further complicate matters, Microsoft exceptions are not always all that
clear and user friendly.
We've seen a lot of cases where System.BadImageFormatException is mistaken
for being something about image formats (as in DotImage, an Imaging toolkit).
The equally unhelpful "An attempt was made to load a program with an incorrect
format" message is often at the end of a long error message that looks nearly
identical to several other exceptions.
Here is a roundup of our various "bitness-specific" KB articles
BadImageFormatException / Attempt was made to load a program with an
This is the most common bitness related exception and this article endeavors
to cover desktop and web fixes for it
ERRMSG: Cause of System.BadImageFormatException, "An attempt was made to load a program with an incorrect format"
HOWTO: IIS Express in 64 bit / 32 bit
FAQ: Common Problems with x64 TWAIN Scanning
HOWTO: Run 32-bit DotImage Assemblies in an ASP.NET Application on a 64-bit Machine
FIX: Drag-Drop of Some Atalasoft Viewers Not Adding Control to Designer
Compile-Time / License Compiler Exceptions
Here is some general info
about fixing compile time
If you are getting compile errors while targeting x64 in .NET 2.0,
3.0, or 3.5
INFO: Workaround for a license compiler exception when targeting x64 in .NET framework 2.0, 3.0, or 3.5
If you are getting compile errors while targeting x64 in .NET 4.0
INFO: Workaround for a license compiler exception when targeting x64 in .NET framework 4.0 and up
Q10480 - INFO: Bitness Roundup Whitepaper: x86, x64, AnyCPU