【问题标题】:Found conflicts between different versions of the same dependent assembly发现同一依赖程序集的不同版本之间存在冲突
【发布时间】:2013-05-22 01:41:34
【问题描述】:

我在 Visual Studio 2010 中创建了一个部署项目。我正在链接 MATLAB 组件和 .NET 组件。 我的 MATLAB 是 64 位的,Visual Studio 也是 64 位的,但有些参考是 32 位的。

当我编译部署项目时,我收到以下警告“发现同一依赖程序集的不同版本之间存在冲突”。

我尝试了一切并将我的处理器设置为 64 位。 但我仍然收到警告。

【问题讨论】:

  • 你有什么冲突?
  • 它显示什么警告?

标签: .net visual-studio-2010 matlab c#-4.0 deployment


【解决方案1】:

这意味着您引用程序集 A 版本。项目 1 中的 xxx 和程序集 A 版本。项目 2 中的 yyy。

问题是您也可以从项目 1 中引用项目 2,因此当在运行时加载所引用的程序集时,两个 A 可能会发生冲突。

【讨论】:

    【解决方案2】:

    我不知道这是否仍然对您有帮助! 我刚刚遇到了第三方公司提供的一些模块的这个问题,我现在已经开始在谷歌上搜索这个问题!

    正如许多其他人所建议的那样,这意味着您的一些模块/dll 使用另一个核心模块的版本 A,而其他一些使用版本 B。在我的情况下,所有模块都在寻找 MODULE_A_VER_X.(signature XXXXXXXXXXXXXXXX) 并且一个寻找具有完全相同版本但具有不同签名的完全相同的模块[例如。 MODULE_A_VER_X.(签名 YYYYYYYYYYYYYYYYYYYYYYYY)]

    在您的安装程序项目中,右键单击每个“检测到的依赖项”,然后在属性窗口中单击“依赖项”项。它向您展示了特定模块所依赖的核心模块!

    这样做(对于您的所有依赖项),可以帮助您识别缺失/冲突的核心模块并让您走上正轨。

    然后您可以联系 MATLAB,要求他们为您提供具有正确版本和签名的核心模块。或者您可以尝试自己查找。

    然后您可以尝试将该模块添加到您的安装程序项目中,看看它是否有效! (在我的情况下,第三方提供商告诉我它会解决我的问题,但它没有!也许对你有用!)

    您也可以尝试使用 VS 安装程序以外的一些软件包(例如 WIX)创建安装程序。

    【讨论】:

      猜你喜欢
      • 2010-09-06
      • 2010-12-24
      • 2014-06-26
      • 2018-12-07
      • 2014-01-25
      • 2014-09-06
      相关资源
      最近更新 更多