用64位的C++dll编译我的32位项目

本文关键字:我的 32位 项目 编译 C++dll 64位 | 更新日期: 2023-09-27 17:59:08

我有一些遗留的C#应用程序(32位),可以使用一些C++第三方dll(不是com……只是简单的非托管C++)

其中一个第三方dll刚刚发布了新的dll版本——这个版本不再是32位了——它是64位的。

我无法将代码编译为64位。

如何继续使用这个新版本的64位dll?

用64位的C++dll编译我的32位项目

不能将64位DLL加载到32位进程中。反之亦然。因此,您需要两个进程和IPC。

进程外的COM服务器可能是最简单的方法。

也许最简单的方法是为第三方dll编写COM包装器。我可能会用c#来写,因为我很懒,但如果你喜欢的话,也可以用c++。然后你可以调用那个包装器,但它必须在proc之外,因为你不能在proc中跨位调用,但你知道这一点。