| 查看: 3338 | 回复: 15 | |||
| 本帖产生 1 个 程序强帖 ,点击这里进行查看 | |||
[交流]
【求助】c++如何发布独立的程序?
|
|||
|
俺是用VC6.0的编译环境,程序编译成功后,如何发布独立运行的执行文件? 就是拷贝到没有安装vc6.0的机子上也能运行。 还要专门的软件吗? 哪里有下载? 请高手指点一二,谢谢了先! 白天不能上网,晚上下班回家发金币,请包涵! |
» 猜你喜欢
今天系统多次维护,明天很可能放榜!
已经有5人回复
欢迎发来filecode的Mz6后的代码验证其规律
已经有74人回复
岩土工程学报什么时候才能终审完呐
已经有4人回复
时间戳又变了8-15
已经有25人回复
2027广东省杰青
已经有6人回复
快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。
已经有3人回复
哪位老哥知道今年的国自然具体哪一天放榜?
已经有9人回复
咱们一起用铁证分析2026国家社科基金中标与否
已经有26人回复
我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人
已经有16人回复
有时候,自然基金真的不能太认真 (我的申报经验)
已经有12人回复
» 本主题相关价值贴推荐,对您同样有帮助:
c++程序设计课件
已经有89人回复
如何写程序并生成软件?
已经有17人回复
急求 C或C++编如何求三次方程的程序 交作业
已经有3人回复
上海高等研究院(筹)信息科学与技术研究部招聘启事
已经有8人回复
中科院深圳先进技术研究院2011年校园招聘开始了,敬请关注,待遇已补上
已经有79人回复
【分享】C++程序设计总结——学C++的朋友多注意!!!
已经有10人回复
» 抢金币啦!回帖就可以得到:
今天看到省基金挂了,希望国基面上能中吧
+5/425
祝福!基金中中中!!!!
+1/396
[求助]请问水下焊接技术有啥进步?
+1/191
上海同城
+1/115
中国科学院空天院精密干涉测量团队 精密机械结构工程师招聘启事
+1/83
中国科学院空天院精密干涉测量团队 精密机械结构工程师招聘启事
+1/81
东南大学杰青/海优团队招聘催化方向博士后
+1/81
加拿大/英属哥伦比亚大学曹彦凯课题组招收全奖博士/博后 [机器人/控制方向]
+1/31
天津大学环境学院童银栋教授招收博士后(生源要素循环/温室效应/新污染物方向)
+1/30
华南理工大学招2027年生物材料、药物递送申请考核制博士生
+1/25
物理学报录用,散币感谢合作者和审稿人
+2/24
祝福!祈福!!基金中中中!
+5/15
西北工业大学 生科院 秦绪军课题组诚招博士后、博士/硕士研究生【长期有效】
+1/13
27级博士生 + 福州大学 + 经管学院 + 管理科学与工程(见贴则有指标)
+1/8
论文祈福
+1/8
关于Ghaffar-Parkins催化剂催化氰基水解为酰胺的问题
+1/6
南京医科大学-冯璋课题组-招收2027级生化与分子生物学专业博士和硕士研究生
+1/3
中山大学国家级青年人才课题组招收推免硕士2名(2027年入学)
+2/2
中科院理化所热声热机团队招聘电气工程专业(电机方向)博士后/特别研究助理
+1/1
招聘要求 有机合成,应届硕士或者博士
+1/1
5楼2010-11-23 13:41:25
★ ★ ★ ★ ★
steincat(金币+15):谢谢指教! 2010-12-17 22:21:18
steincat(金币+6):再次谢谢! 2010-12-17 22:21:36
余泽成(金币+5, 程序强帖+1): 谢谢参与应助! 2011-02-20 18:38:52
steincat(金币+15):谢谢指教! 2010-12-17 22:21:18
steincat(金币+6):再次谢谢! 2010-12-17 22:21:36
余泽成(金币+5, 程序强帖+1): 谢谢参与应助! 2011-02-20 18:38:52
|
linyujack 说的不正确。 所谓Debug版本,是说在.exe程序里包含了源程序的调试信息,比如符号表等。这样当你在程序里设置断点的时候,调试器能够定位到相应的语句。 另外,Debug版本,因为调试的需要,不对编译好的程序进行深度优化,甚至不优化,因为优化可能大乱源文件语句与汇编代码的对应关系,无法进行调试。 而Release版本就是完成了以上debug版本没有完成的任务,剔除了符号表,进行速度或体积上的优化。 通常来说release版本会比debug版本小。 而linyujack所说的,不是debug和release的区别,而是static和dynamic的区别。 任何编译型语言都需要一些链接库,而库的提供形式有两种:1 静态库, 所有的代码都放进最终的程序里,最后的程序就是所谓的绿色软件。 2 动态链接库。库代码单独放到一个文件里, 只有在最终运行的时候才加载相应的代码。所以,使用动态链接库的时候,由于有一部分代码在主程序以外,导致主程序显得很小。 所以最终软件发布的时候需要: 1 编译程release版本,并选择相应的优化选项 2 确定使用动态链接库还是静态的库。 2.1 当你使用的库很普遍,几乎任何电脑上都有安装的时候, 可以使用动态链接库,以减少程序的体积。但这通常没有绝对的保证。 2.1.1 如果你的程序调用了大量的库函数(我说的是种类,而不是次数),那可以包含这个库的动态链接库(DLL文件),随最终软件一同发布。而这个过程已经有N多的软件帮你完成,比如Windows Installer等。 2.2 如果你的程序很简单,而且想绿色运行,那就选择静态库,这样最终的程序体积会有所增大,但不需要任何安装就可以直接运行(需要通过DBMS访问数据库的除外) 2.2.1 如果你想发布绿色软件,又觉得软件体积太大,那么,请试试UPX这个软件,它是一个压缩软件,但压缩后的程序和原来没有任何区别(偶尔也会有点小麻烦,不过我还没有遇到过) OK,我想我已经解释清楚了。至于如何选择编译方式,这个自己研究一下吧。 |
9楼2010-12-17 09:14:50
2楼2010-11-22 21:01:43
3楼2010-11-22 22:36:10
4楼2010-11-22 22:53:14
7楼2010-12-16 17:53:26
8楼2010-12-17 08:24:14
★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+3): 谢谢参与应助,欢迎常来程序语言版! 2011-02-20 18:39:19
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+3): 谢谢参与应助,欢迎常来程序语言版! 2011-02-20 18:39:19
|
holmescn说的很正确,只是补充一点,其实在大多数实际的软件项目中,Release版本也还是需要调试才能正常运行的。推荐如下的调试技巧: 生成map文件。即使编译Release版本时打开了优化选项,也就是在VC++中打开Generate mapfile选项,它仅仅是把编译连接时的所有函数入口地址记录在一个后缀为map文件中,程序如果出了问题,都可以得到崩溃时的EIP地址,通过这个地址,就可以查到程序挂掉时的函数是哪个。 |
10楼2011-02-16 22:58:18
11楼2011-07-05 18:56:17
12楼2011-07-05 23:28:23
13楼2011-07-08 12:32:10
14楼2011-07-15 11:30:06
15楼2011-07-15 13:40:16
16楼2011-07-16 09:23:56
简单回复
2010-12-14 21:31
回复
steincat(金币+1):thx 2010-12-17 08:24:38










回复此楼
