c++ - 在 32 Borland C++ Builder 中使用 64 位 DLL

标签 c++ dll 64-bit c++builder

我需要制作一个超过 4GB 数据的“数据池”,组织为二维数据数组:

我有一个在 32 位 CodeGear 2009 C++ Builder 中制作的 50 表单应用程序,其中包含许多第三方 VCL 组件 - 因此现在不是真正迁移到 Visual Studio 2010 的选项(目前)。

想法是使用包含数据数组的 64 位 DLL(用 Visual Studio 2010 制作?或 Delphi EX2?)——想法是使用数组中数据位置的 x、y 参数调用 64 位 DLL,以及DLL 返回数组中的值。

有人做过吗?是否可以从 C++ Builder 调用 64 位 DLL,在运行时动态加载 DLL 的初始化代码看起来如何?

任何意见都非常感谢,因为这是一个表演障碍。

最佳答案

考虑到您列出的限制条件,您的最佳选择是使用进程外 COM 服务器。您的 32 位 C++Builder 应用无法加载 64 位模块。这是一个无法绕过的硬性限制。这为您留下了某种形式的进程间通信,进程外 COM 将是最容易编码的。

关于c++ - 在 32 Borland C++ Builder 中使用 64 位 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8456914/

相关文章:

c++ - cygwin 异常堆栈转储文件错误?

c++ - 动态链接与静态链接效率

c++ - 从 Fortran 调用特定的 C++ DLL

c++ - D3D->CreateDevice() 在注入(inject)的 DLL 中失败

android - 64 位 Eclipse 不会在 Android 模拟器上安装 .apk

c++ - 指向某物的指针,无法理解是什么类型

c++ - JNI_CreateJavaVM 上的段错误

c# - 将 64 位二进制转换为 Long 等价物

c++ - 如何垂直打印二叉树搜索类?

c++ - 从 Microsoft C++ 读取 RSP 寄存器