原生64位dll的32位Dll包装器

时间:2014-02-20 09:26:52

标签: c# c++ dll interop wrapper

我使用c ++创建了一个64位的dll。是否可以将c#32bit dll作为高于64位dll的包装器?

我能够通过创建64位c#wrapper dll来完成工作。但是当我尝试使用32位包装器时,它不起作用,是否可能?或者我做的事情永远无法完成?

1 个答案:

答案 0 :(得分:4)

32位代码不能(直接)调用64位代码,反之亦然。您必须转换模式,这实际上只能在操作系统级别完成。所以虽然我不是.Net / C#的专家,但我会说“不可能”。

您可以构建一个独立的服务进程,该进程在64位空间中运行并使用64位DLL,并使用进程间通信来回传递数据。

或者将DLL编译为32位库...