加载特定的32/64bit dll参考项目问题

Lip*_*sey 3 c# dll 64-bit 32-bit

我一直在寻找,但似乎我的问题与大多数人有所不同.

这是交易,我想使我的程序兼容32和64位.由于用.NET编写它不是问题,但我使用的是一个特定于位的sqlite dll.

尽管如此,我有两个版本的dll,并且我能够编译64位的主程序,通过重新添加64位版本引用到项目,我想让它工作不知何故.

必须编译2次对我来说效率不够,相反,我想找到一种方法使其动态可调:鉴于Dlls是相同的,它们的内容:函数方法无论如何,都是相同的,唯一的区别是他们,是位版本.因此,我想使我的程序的兼容性取决于它旁边的dll.

由于通常它在项目中作为参考添加,Visual studio通过突出显示检测其内容,我想以某种方式将其添加为参考,但是使实际的dll(位于exe旁边)加载,而不会失去到目前为止,使用dll函数,在编辑器中,高亮度.

我已经阅读了Assembly.Load/LoadFrom/LoadFile,+ Reflection,但它并不是我需要的.

提前致谢,

大卫

Fro*_*ire 8

我知道你已经做了很多搜索,但这两个链接确实为你提供了两个很好的选择,你可能已经错过了.

基于64位或32位操作系统导入外部DLL

试图不需要两个单独的x86和x64程序解决方案

在这两个链接中,看看Hans Passant的答案.真棒.

希望这可以帮助.