2010-11-16 66 views
11

我有一个来自供应商的32位和64位.NET程序集。他们有完全相同的接口(相同的类,相同的方法等)不同的.NET程序集引用取决于32-64位

由于某种原因,我永远不能在另一个平台上运行一种类型。到目前为止我所做的只是删除引用,然后根据需要重新编译。

有没有更简单的方法来做到这一点?

编辑

我想SVN可共同选择以某种方式解决这个问题?

编辑

该组件不在GAC中。此外,还需要这样做,因为我在两个平台上构建了相同的程序,而不是尝试在另一个平台上运行构建在一个平台上的内容。

回答

1

您不能使用混合装配具有相同的应用程序。您只能使用相同类型的assassembly x86或x64。

您不能在32位操作系统上运行x64应用程序,但可能在其他地方运行x64应用程序。

1

告诉您的供应商使用AnyCPU标志进行编译,并以编程方式提取所有依赖于平台的内部呼叫,而不是要求消费者为他们做。

如果他们不这样做,你可以使用反射来编写自己的代理,但我不推荐它。随着时间的推移维护该组件将是一个痛苦。

+0

这第二EDIT(“我建立了相同的程序在两个平台上”)是一个重要的;它使我的开发RAWR时刻无效;) – xcud 2010-11-16 16:00:58

相关问题