C ++ / Cli程序System.BadImageFormatException

时间:2013-04-15 08:47:32

标签: c# c++-cli

我有一个奇怪的问题

平台:.net 4.0,win7 32/64,VS2010

MIPCChannel.dll:C ++ / cli mixed dll

NewClient.exe:C#,它引用了MIPCChannel.dll

问题是当我部署我的程序时,有人尝试运行NewClient.exe会出错:CLR20r3,System.BadImageFormatException

我执行以下步骤:

  1. 我尊重MIPCChannel.dll一切顺利
  2. 或者我安装VS2010重新分配一切正常
  3. 但我不想回复重新发布,我想知道问题出在哪里!

2 个答案:

答案 0 :(得分:1)

混合模式C ++ / CLI DLL必须与动态运行时链接。这意味着您必须将动态运行时部署到您希望运行此类DLL的任何计算机上。

由于您使用的是VS2010,因此不需要使用可再发行组件包部署运行时,尽管这是建议的方法。您可以改为部署specific Visual C++ DLLs to the application local folder

答案 1 :(得分:0)

检查是否是x86或x64问题。您很可能在64位环境中开发,但在32位环境中进行了部署。