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

Posted sea520

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS2013生成Release版本MFC程序在其他机器上运行相关的知识,希望对你有一定的参考价值。

对于自己机器安装了VS开发环境,生成MFC的exe文件能够在自己机器上运行,复制到其他目标机器可能出现不能运行的情况。下面就个人经历将发布的两中情况简要说明。

1、工程属性中:配置属性-常规,MFC使用类型选择“在共享的DLL中使用MFC”;C/C++ - 代码生成-MFC的使用 选择“多线程DLL(/MD)”
这种情况下,若直接将exe文件放到目标机器运行,则需要目标机器安装相应的开发平台、或者将生成exe程序的依赖dll文件复制到目标机器的程序运行目录下;若用到第三方库,也要复制相应的dll文件。其中依赖的dll文件可以通过Dependency查看。
简单的说,若选择这种方式,需要和exe程序和所有需要的系统和第三方dll文件一起打包。

2、工程属性中:配置属性-常规,MFC使用类型选择“在静态库中使用MFC”;C/C++ - 代码生成-MFC的使用 选择“多线程(/MT)”
这种情况下,exe程序中已经包含了开发平台单独需要的dll文件。若不包含第三方库,可以将exe复制到目标机器直接运行了;若包含第三方库,需要将第三方的dll文件复制到程序运行目录。
简单的说,这种方式下,仅需要exe程序和用到的第三方dll文件一起打包即可。相对第一种方式,第二种方式生成的exe文件占用空间要大一些。

用户可以根据实际情况选择发布的方式。 

以上是关于VS2013生成Release版本MFC程序在其他机器上运行的主要内容,如果未能解决你的问题,请参考以下文章

DEBUG 和Release的区别

在VS2015中使用MFC,程序生成的窗口看不到,求解。

VS2013生成XP独立运行程序

用vs2008做的MFC程序,怎么在WINDOWS XP下运行?

VS mfc 配置项目属性表----一劳永逸法-分debug与release版本

VS2010 C++ MFC写的程序编译可以正常运行,但是我想直接运行,DEBUG里找不到EXE文件