BadImageFormatException未处理

时间:2013-12-02 20:46:06

标签: c# c++ .net visual-studio

编译或尝试在Windows 8 64位上运行我的应用程序时抛出“BadImageFormatException”。我浏览过互联网,很多人都有同样的错误信息。但是,没有一种解决方案可以解决我的问题或情况。我正在使用Visual Studio 2012 Express。

错误消息

  

错误38无法加载文件或程序集'file:/// C:/ Projects / Windows Projects / Weld / Components / FileAttachments / FileAttachments / FileAttachments / bin / x86 / Debug / FileAttaching.dll'或其依赖项之一。试图加载格式不正确的程序。

我确实有一些C ++ dll,大多数dll都在C#中。有些dll是在32位机器上编译的,我使用的是64位机器。

1 个答案:

答案 0 :(得分:18)

此错误BadImageFormatException,总是意味着您要么尝试将32位DLL加载到64位应用程序中,要么尝试将64位DLL加载到32位应用程序中。

有时在为AnyCPU编译时也会发生这种情况,因此如果您的DLL以特定平台为目标,您可能希望使您的项目以此特定平台为目标。

在您当前的场景中,FileAttaching.dll可能是64位DLL,因此我建议您检查是否在此项目上输出32位DLL或使用正确的32位版本。