【发布时间】:2016-02-25 00:25:20
【问题描述】:
我对 32 位 dll 有运行时依赖项,该 dll 将在我的 64 位 exe 中用于某些功能。由于这个 32bit dll 是第三方 dll,他们不愿意为我们提供 64bit dll,解决这个问题的最佳方法是什么?目前我已经考虑实现新的 32 位 exe 来处理这种在 32 位 dll 和 64 位 exe 之间进行通信的依赖关系。
我尝试过的一种方法是创建一个新的 32 位 exe。因此,64 位进程与 32 位 exe 通信,后者又消耗 32 位 dll(第 3 方)。
对此的任何建议都会非常有用。
【问题讨论】:
-
你能不能把你的程序编译成 32 位?您编译为 64 是否有特定原因?
-
据我所知,在 64 位中使用 32 位没有问题。反之,这是不可能的。你遇到什么错误?
-
@MigueldeSousa 我不确定如何加载 32 位 DLL 并保证它传递的每个指针都在它可以寻址的最低 4GB 中。我并不是说这是不可能的,我只是从未见过它完成 :)
-
@MigueldeSousa 64 位可执行文件无法加载 32 位(可执行)dll
-
好吧,我的错 :) 谷歌搜索并找到了这个social.msdn.microsoft.com/Forums/vstudio/en-US/…