gpt4 book ai didi

c++ - 使用 C++ 从 32 位进程访问 64 位 dll

转载 作者:太空宇宙 更新时间:2023-11-04 11:32:56 40 4
gpt4 key购买 nike

我确实宣布无法在同一进程中将 64 位 dll 加载到 32 位 dll。但是我可以将我的 64 位 dll 放入 com 并从我的 32 位应用程序访问该 com。任何人都可以为我提供一个样本吗?还有其他方法可以解决这个问题吗?

注意:我无法将 64 位 dll 构建为 32 位作为其外部第 3 方 dll,并且我无法将我的 32 位进程转换为 64 位,因为它是一个非常庞大的应用程序。将其转换为 64 位需要我很多年。

任何帮助将不胜感激

最佳答案

您可以利用有关从 32 位进程访问 64 位的进程通信。
下面是一些步骤。

  1. 制作一个 COM 服务器,example ,可以修改工程属性生成64位程序。

  2. 定义并实现 com 接口(interface),在 COM 服务器中,加载 64 位 dll 和 wrapper dll 函数。

  3. 32位App调用COM服务器接口(interface)(CLSCTX_ACTIVATE_64_BIT_SERVER),通过参数发送数据,得到结果。

关于c++ - 使用 C++ 从 32 位进程访问 64 位 dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23926618/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com