VC8应用程序的发布问题

简介:

1. 问题描述:
最近在VS2005下用C++写了一个Console程序,在一台未安装VS2005的机器上不能正常运行。
用命令行方式运行,提示:
“系统无法执行指定的程序”
直接双击运行,提示:
“由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题”
用VC6和VS2003也有这个问题,只不过会提示说找不到“***.dll”,把需要的dll拷贝到目标机器就可以正常运行了。而VS2005并没有提示缺少哪些dll。
2. 解决方案:
在水木C++版请教了一下,ass做出了回答(非常感谢ass的帮助)。把他的回答摘录如下,大家共同学习:
“因为没有msvcr80.dll
可以改一下编译选项 多线程dll(/MD)改成多线程(MT)这样就静态链接,
也可以从你的vc8安装盘上找到再分发包vcredist_xxx.exe和你的程序捆绑安装。”

也可到这里下载:

http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=zh-cn


根据ass指导的思路,自己实验了一下,感觉以下两种解决办法是比较方便的:
方法一:
在C:Program FilesMicrosoft Visual Studio 8VCredi
stDebug_NonRedistx86Microsoft.VC80.DebugCRT 下找到了下列文件:
msvcm80d.dll
msvcp80d.dll
msvcr80d.dll
Microsoft.VC80.DebugCRT.manifest
把这几个文件拷贝到目标机器上,与运行程序同一文件夹或放到system32下,就可以运行那个程序了。

方法二:
修改“C++/Code Generation”中的运行时库选项,将/MD或/MDd 改为 /MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不再需要VC的dll了。

 

还有几个要注意的地方:在实际应用中,一个应用程序往往由DLL和EXE构成,若exe配置为MTd,则要解决上面的问题,DLL也必须是MTd。



本文转自斯克迪亚博客园博客,原文链接:http://www.cnblogs.com/sgsoft/archive/2008/03/14/1106476.html,如需转载请自行联系原作者

相关文章
|
10月前
|
存储 SQL Dart
flutter学习路线
flutter学习路线
520 62
|
资源调度 JavaScript
不使用脚手架安装nuxt.js
【8月更文挑战第6天】
|
存储 人工智能 安全
能多端登录的无影云电脑玩的就是“花样”!
众所周知,无影办公是近年来较为流行的一种新型办公方式,其采用云计算、虚拟化、网络传输等技术,实现了办公终端的全面云化。这种方式在传统的办公场景中,具有很多优势,使用无影硬件终端可以让员工更加高效地完成工作,提高了企业的生产效率。那么本文就来简单分享一下能多端登录的无影云电脑。
2077 2
能多端登录的无影云电脑玩的就是“花样”!
|
存储 SQL 分布式计算
金三银四V2.0之大数据面试常见的10个问题
金三银四V2.0之大数据面试常见的10个问题
132 0
34Echarts - 柱状图(正负条形图)
34Echarts - 柱状图(正负条形图)
320 0
|
Java Linux 开发者
Powershell教程(2)——自定义模块Module语法
Powershell教程(2)——自定义模块Module语法
957 0
Powershell教程(2)——自定义模块Module语法
|
安全 Linux 网络安全
Linux学习笔记 24(FTP服务)
FTP会话包含了两个通道,一个叫控制通道,一个叫数据通道。控制通道是和FTP服务器进行沟通的通道,连接FTP、发送FTP指定都是通过控制通道来完成的。数据通道是和FTP服务器进行文件传输或者列表的通道。 主动模式:服务器开放 20 和 21 号端口 主动模式是传送数据时是 服务器 连接到客户端的端口 被动模式:服务器开放 21 号端口以及一个随机端口,其中21号端口固定用来做控制链接 被动模式则是客户端连接到服务器的端口(1) 匿名用户:anonymous 或者 ftp(2) 本地用户:服务器本身的用户家目录为共享目录(3) 虚拟用户:使用独立账户密码数据文件的用户Vsftp (Very Se
Linux学习笔记 24(FTP服务)
|
移动开发 定位技术 API
iOS测试技巧:通过GPX文件修改经纬度信息(模拟iOS设备的位置)
iOS测试技巧:通过GPX文件修改经纬度信息(模拟iOS设备的位置)
1106 0
iOS测试技巧:通过GPX文件修改经纬度信息(模拟iOS设备的位置)
|
搜索推荐 云计算
记第一次使用云服务器
我是一个学生党,在读大学计算机科学与技术专业,在学习的过程中会接触到很多关于云计算的课程。因为资金有限,也不想会钱买个服务器来练习,阿里云有很多的云实验可以做——有时间限制,后来我也是进行学生认证然后免费申领了这个服务器,因为这个服务器的使用时间是两个周所以对于我来说是应该算是一个很大的福利把,因为进行实验以后不需要每天重复之前的实验。当然如果有能力的话阿里的学生特惠还是很不错的。
记第一次使用云服务器
|
监控 应用服务中间件 API
阿里云容器服务Kubernetes实践系列 - Ingress篇
本文是我司近期对阿里云容器服务落地实践经验的总结之ingress篇,从原理、实践、到避坑等多方面进行总结。
5498 0

热门文章

最新文章