visual studio编写的exe程序不能在没装vs的电脑上运行
2010-03-02 17:01
295 查看
解决方案如下: 1).在C:/Program Files/Microsoft Visual Studio 8/VC/redist/Debug_NonRedist/x86 /Microsoft.VC80.DebugCRT 下找到了下列文件: msvcm80d.dll msvcp80d.dll msvcr80d.dll Microsoft.VC80.DebugCRT.manifest 把这几个文件拷贝到目标机器上,与运行程序同一文件夹或放到system32下,就可以运行那个程序了。 其他release版,MFC程序什么的都是拷redist下相应文件夹下的文件就可以了,文件夹后都有标识! 2).修改编译选项,将/MD或/MDd 改为 /MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不 再需要VC的dll了。 3). 工程-》属性-》配置属性-》常规-》MFC的使用,选择"在静态库中使用mfc" 这样生成的exe文件应该就可以在其他机器上跑了。 4).在vc8安装盘上找到再分发包vcredist_xxx.exe和你的程序捆绑安装 5).修改项目属性的编译开关 工程-->属性-->配置属性-->C/C++-->代码生成-->运行时库 修改为Multi-threaded(/MT) 修改了Runtime类型以后,需要将MFC的编译类型也改成静态库 工程-->属性-->配置属性-->常规-->MFC的使用 修改为:在静态库中使用MFC; 一部分情况下在这步就能解决问题,另外一部分情况会遇见如下情况,编译器报错:储如:"再次定义" 解决方法如下: 工程-->属性-->配置属性-->链接器-->输入-->附加依赖项 中加入相应的*.lib (如:加入nafxcw.lib,libcpmt.lib )这一般根据你程序所报的错进行修改; 工程-->属性-->配置属性-->链接器-->输入-->特定的库 (如:加入nafxcw.lib,libcpmt.lib ) 这样链接程序就不会先按照默认顺序来连接这两个库文件,而是在最后在加入对他们的引用. 下面是一张可能发生冲突的列表 若要使用此运行时库 请忽略这些库 单线程 (libc.lib) libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib 多线程 (libcmt.lib) libc.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib 使用 DLL 的多线程 (msvcrt.lib) libc.lib、libcmt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib 调试单线程 (libcd.lib) libc.lib、libcmt.lib、msvcrt.lib、libcmtd.lib、msvcrtd.lib 调试多线程 (libcmtd.lib) libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、msvcrtd.lib 使用 DLL 的调试多线程 (msvcrtd.lib) libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib
相关文章推荐
- visual studio编写的exe程序不能在没装vs的电脑上运行
- visual studio编写的exe程序不能在没装vs的电脑上运行
- VS2008编写的程序在有些电脑上不能运行的解决办法。
- 利用Emgucv3.0编写的exe在其它电脑不能运行的解决办法
- VS2010编写exe程序,在其他电脑上无法运行,提示缺少mfc100.dll的解决办法
- MFC生成的exe程序不能在其他电脑上运行怎么办
- VS2010编写exe程序,在其他电脑上无法运行,提示缺少mfc100.dll的解决办法
- qt生成的exe可执行程序打包到其他电脑上执行时jpg、gif图片不能正常显示,但png等其他格式可以显示
- VC编写的程序不能在其他机器上运行的解决方案(续)
- java 程序用exe4j 打包成exe,怎样在没有jdk环境电脑上运行
- VC编写的程序不能在其他机器上运行的解决方案
- Java桌面程序打包成exe——可在没装Java的电脑上安装或运行
- 用VS2010编写的C++程序,在其他电脑上无法运行的问题
- VC编写的程序不能在其他机器上运行的解决方案(续)
- [PsTools]psexec.exe使用范例-运行远程电脑程序(exe、bat等)
- 用VS2010编写的C++程序,在其他电脑上无法运行,提示缺少mfc100.dll的解决办法
- 解决:eclipse cdt 编写的c/c++程序的运行结果不能输出到console
- 使用Python开发Android应用程序:第三节 在电脑上编写程序在手机上运行
- vs2008编写的程序在其它机器上不能运行
- 用VS2010编写的C++程序,在其他电脑上无法运行,提示缺少mfc100.dll的解决办法