在 64 位计算机上编译 32 位非托管 DLL

发布于 2024-12-13 12:25:31 字数 209 浏览 1 评论 0原文

我有一台装有 Win7-64 的新电脑。我安装了 VS2010,并尝试为 32 位环境编译 C++ 非托管 DLL。当我在 Dependency Walker 中查看创建的 DLL 时,我看到我的文件是 32 位,但所有依赖的 DLL 都是 64 位,并且错误消息:找到了具有不同 CPU 类型的模块。

我需要做什么才能使 DLL 可用,并且在 dependent.exe 中看不到错误?

I've got a new computer with Win7-64 on it. I installed VS2010, and am trying to compile a C++ unmanaged DLL for a 32-bit environment. When I look at the created DLL in Dependency Walker, I see my file is 32-bit, but all dependent DLLs are 64-bit, and the error message: Modules with different CPU types were found.

What do I need to do so that the DLL is usable, and I don't see an error in depends.exe?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

丿*梦醉红颜 2024-12-20 12:25:31

您需要使用32位Dependency Walker(两者可以安装在同一台机器上)。

Dependency Walker 不够智能,无法使用 WOW64 目录,因此仅当 Dependency Walker 本身在 WOW64 内运行时才能找到 32 位依赖项。

You need to use 32-bit Dependency Walker (both can be installed on the same machine).

Dependency Walker isn't smart enough to use the WOW64 directories, so 32-bit dependencies are only found when Dependency Walker is itself running inside WOW64.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文