0

我有一个奇怪的问题

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

MIPCChannel.dll:C++/cli 混合 dll

NewClient.exe:引用 MIPCChannel.dll 的 C#

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

我执行以下步骤:

  1. 我尊重 MIPCChannel.dll 一切正常
  2. 或者我安装 VS2010 重新分发一切正常

但我不想回复重新分发,我想知道问题出在哪里!

4

2 回答 2

1

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

由于您使用的是 VS2010,因此不需要使用可再发行包部署运行时,尽管这是推荐的方法。您可以改为将特定的 Visual C++ DLL 部署到应用程序本地文件夹

于 2013-04-15T11:43:46.907 回答
0

检查是x86还是x64的问题。您很可能在 64 位环境中开发,但在 32 位环境中部署。

于 2013-04-15T08:57:19.600 回答