当前位置:硬件测评 > vs2010生成exe在其他电脑上运行_

vs2010生成exe在其他电脑上运行_

  • 发布:2023-09-16 15:42

VS2010静态编译生成的.exe可执行文件,可以免安装在其他电脑直接运行 静态编译:就是在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖动态链接库。

?编译方式:

第1种:设置:1、项目->配置属性->常规->MFC的使用:在静态库中使用MFC

2、项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程调试(/MTd)。?

编译时,选择的是debug,win32然后执行编译生成方案,在该工程目录下的debug文件中,找到该.exe文件,即可在其他电脑运行。?

第2种:一般可以配置一下两项:1.项目 -> 配置属性->常规->MFC的使用 :在静态库中使用MFC。

2.项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程调试(/MT)。

?编译时,选择的是release,win32(这个选择项在工具栏的debug选框中,一般我们使用debug方式)?

debug方式产生的文件会比较大,听说它包含了一些调试用的信息,release方式生成的只是该软件所需要的所有功能而已(这个我也不懂,反正大小差不多2:1)。

设置:1.项目->属性->常规->MFC的使用:在静态库中使用MFC 2.项目->属性->C/C+±>代码生成->运行库:选择 多线程调试(/MTd)

编译时,选择的是debug文件,所以在发送时一定要在改工程目录的debug文件中,找到该.exe文件,即可在其他电脑上运行。

http://www.sychzs.cn/article/ab67bbe640f511e081e1000c2959fd2a/

用vs2010编写的程序经常会发生的一个问题。在自己的机器上运行的好好的,但是在别的机器上就会发生没有找到MSVCR100D.dll。这是个很头疼的问题。对于一些代码量几百行的小程序,我不可能要求其他电脑也一定要配有MSVCR100D.dll这个dll。当然解决方法也有,但是我也不可能要求所有的电脑都装上.net framwork 2.0。微软又给CSer们出了个难题。

解决方法:

在vs2010下,按ALT+F7,打开工程属性–>配置属性–>代码生成–>运行时库–>选多线程(/MT)

如下图:

相关文章