不同的 .NET 程序集引用取决于 32-64 位 [重复]
Posted
技术标签:
【中文标题】不同的 .NET 程序集引用取决于 32-64 位 [重复]【英文标题】:Different .NET assembly references depending on 32-64 bit [duplicate] 【发布时间】:2011-05-10 21:35:09 【问题描述】:我从供应商处获得了 32 位和 64 位 .NET 程序集。它们具有完全相同的接口(相同的类、相同的方法等)
由于某种原因,我永远无法在另一个平台上运行一种类型。到目前为止,我所做的只是删除引用,然后根据需要重新编译。
有没有更简单的方法来做到这一点?
编辑
我在想 SVN 可以以某种方式解决这个问题?
编辑
程序集不在 GAC 中。而且,由于我在两个平台上构建相同的程序,而不是试图在另一个平台上运行构建在一个平台上的东西,因此需要也出现了。
【问题讨论】:
【参考方案1】:也许这有帮助:Conditional Reference in VS 2010
编辑: 这是一个更好的描述:Conditionally use 32/64 bit reference when building in Visual Studio
【讨论】:
+1:用于查找与此重复的 Q。【参考方案2】:您不能使用 mixt 程序集来拥有相同的应用程序。您只能使用相同类型的程序集 x86 或 x64。
您不能在 32 位操作系统上运行 x64 应用程序,但其他方式是可能的。
【讨论】:
【参考方案3】:告诉您的供应商在打开 AnyCPU 标志的情况下进行编译,并以编程方式抽象其所有内部平台相关调用,而不是要求消费者为他们这样做。
如果他们不这样做,您可以使用反射编写自己的代理,但我不建议这样做。随着时间的推移维护该组件会很痛苦。
【讨论】:
第二次编辑(“我在两个平台上构建相同的程序”)是一个重要的编辑;它使我的开发人员 RAWR 时刻无效;)以上是关于不同的 .NET 程序集引用取决于 32-64 位 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
asp.net提示“未能加载文件或程序集“XXXXXXXX.dll”或它的某一个依赖项。找不到指定的模块。”