使用 mfc 的 EXE(调试)无法在其他 PC 上运行

Posted

技术标签:

【中文标题】使用 mfc 的 EXE(调试)无法在其他 PC 上运行【英文标题】:EXE (Debug) using mfc cannot run on other PC 【发布时间】:2014-03-04 00:07:13 【问题描述】:

-第0部分

我的 EXE(调试)使用用 vs2012 构建的 mfc,无法在只有 vs2013 的 PC 上运行。

错误信息:缺少 mfc100ud.dll

使用vs2013构建的mfc的EXE在我只有vs2012的电脑上运行时非常相似

错误信息:缺少 mfc120ud.dll

我认为是因为建筑设置属性中mfc的建筑模式。但我不知道如何正确解决问题。

我尝试构建项目(发布),但即使在我自己的电脑上,exe 也会立即崩溃。


-第一部分

我尝试放弃mfc,只用控制台构建核心程序。 Debug版可以成功运行,但是release版在链接dll(无论是内置debug模式还是release模式)时再次快速崩溃,出现一些乱码。


我的问题是: 如何确保 mfc EXE 或至少一个 Console EXE 在大多数装有 Windows 的电脑上顺利运行?

感谢您的帮助!

【问题讨论】:

【参考方案1】:

您需要在发布模式下构建。如果您在调试模式下构建,EXE 预计会存在某些 DLL,如果我没记错的话,这些只有在安装了与您构建应用程序的 Visual Studio 版本相同时才会存在。

【讨论】:

谢谢。但是在使用 vs 2012 以发布模式构建时,即使在我自己的 PC 上也无法运行 EXE。当我双击它时它立即中断。请问可能的原因是什么? “立即中断”是什么意思? 抱歉不准确。当我添加一个 dll(调试版或发布版)时它会中断。有一个简单地告诉程序中断的窗口,有三个选项:连接到互联网寻求解决方案、调试和关闭。 您要链接到哪些 DLL? 我自己的 dll,充当不同的 AI。事实证明,如果我为EXE和DLL都选择Release模式,并选择支持公共语言,它们运行成功。

以上是关于使用 mfc 的 EXE(调试)无法在其他 PC 上运行的主要内容,如果未能解决你的问题,请参考以下文章

MFC串口调试工具教程

Pyinstaller Packed EXE 无法在其他 PC 上运行脚本。说:Qt5Core,找不到dll

MFC无法运行的原因?我在MFC中加入了一个CWebBrowser的控件后,运行没有出错,但是点击运行是却没有弹出窗

为啥我的exe文件没有在其他电脑上运行? [调试]

VS2013生成Release版本MFC程序在其他机器上运行

MFC在一个工程中启动其他工程的exe文件