gpt4 book ai didi

C++ 32 位应用程序试图使用 64 位 MFC DLL

转载 作者:行者123 更新时间:2023-11-30 05:14:13 26 4
gpt4 key购买 nike

我正在将一个大型 C++ 应用程序从 Visual Studio 6 迁移到 VS2013。我已经构建了 exe 和 DLL。我已经解决了很多问题,并且能够启动该程序。程序启动后立即停止运行。使用 Dependency Walker 后,我认为问题是我的 32 位 EXE 和 DLL 正在尝试使用 64 位版本的 MFC DLL。这是一个屏幕截图:

enter image description here

我的理解是,32 位应用程序应该自动使用位于 C:\Windows\SysWow64 目录中的 DLL;但这似乎并没有发生在这里。

我在项目设置中查看了一些明显的可能会解决这个问题的东西,但我还没有找到任何东西。我想知道你们中是否有人遇到过这个问题,如果有,你们是如何解决的?

感谢您的帮助!

问候,迈克

最佳答案

我要感谢 IInspectable 指出 Process Monitor 的问题。我没有找到具体的 PM 替代工具,但是我使用了 Visual Studio 的 Debug->Windows->Modules 对话框工具。我将调试器附加到可执行文件,我看到了这个: enter image description here

这表明我最初的想法(我的 DLL 指向错误的系统目录)是不正确的。这是一种解脱!

当然,对于这个问题,我又回到了原点,但至少我没有在转移注意力上浪费时间。

谢谢大家的帮助!我很感激。

真诚的,迈克

关于C++ 32 位应用程序试图使用 64 位 MFC DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43528768/

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