I'm working on a .net application compiled for "Any CPU". We have succesfully deployed the application to mutliple environments. The only one giving us issue is Windows 7 x64 (it is crashing immediately complaining for BadImageFormatException). When I run the application with Process Monitor attached, I get the following before it initiates Windows Error Reporting.
07:11.3 3544 RegOpenKey HKLM\SOFTWARE\Microsoft\CTF\KnownClasses NAME NOT FOUND
07:11.3 3544 CreateFile C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\comctl32.dll NAME NOT FOUND
07:11.4 3544 CreateFile C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\comctl32.dll NAME NOT FOUND
07:11.4 3544 CreateFile C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\comctl32.dll NAME NOT FOUND
07:11.6 3544 RegOpenKey HKLM\SOFTWARE\Microsoft\CTF\KnownClasses NAME NOT FOUND
07:11.6 3544 CreateFile C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\comctl32.dll NAME NOT FOUND
07:11.8 3544 RegOpenKey HKCU\SOFTWARE\Policies\Microsoft\PCHealth\ErrorReporting开发者_StackOverflow NAME NOT FOUND
Has anyone else seen this?
As a follow up to Hans' point, check the following:
Site Link
Essential part:
You need to set Properties > Build > Platform target to "x86". This will force it to run in WoW64, so the 32-bit mixed model Phoenix assemblies will load.
精彩评论