|
|
1
6
在64位中编译时,需要确保仅对64位DLL使用P/Invoke调用。 一种选择是将所有“方法”移动到标准接口(或抽象基类)中,并提供两个实现,一个32位和一个64位。您可以让工厂方法根据IntPtr的大小构造适当的类实例。 这允许“AnyCPU”应用程序在运行时正确地确定要P/调用到哪个DLL,并且确实可以工作。 |
|
|
2
3
创建一个包装64位和32位DLL的助手类,并使用IntPtr.Size来确定要调用哪个。
|
|
|
3
1
您可以将.Net应用程序标记为仅针对x86体系结构 |
|
|
4
1
我也有类似的问题,但是unrr.dll不是32位就是64位。 有两种方法可以使其工作: (一)
编译32位和64位的应用程序。 (二) 另一种方法是为导入创建接口,并分别实现32位和64位版本。
|