为什么Delphi编译出来的可执行程序这么大???(100分)

  • 主题发起人 主题发起人 王欣寓
  • 开始时间 开始时间

王欣寓

Unregistered / Unconfirmed
GUEST, unregistred user!
;小弟最近编了一个小型的应用程序,但编译连接完成后一看,却有1.4MB之大,而
用VC编的大小相当的程序却只有400KB左右,我在Project->Option里面清除了所有的
编译选项,应用程序却不见减小,不知道Delphi里面是否有类似VC里面的Debug版和
Release版的概念。另外,我查看了我的程序里面的DLL文件好象很多,有没有办法
去掉它们,动态装入!
 
大,的确是大了点, 但是编译速度, 开发速度比VC++快多少???
现在谁的硬盘不是4。3G 300MMHz以上,
现在程序占用的空间, 以及执行时的速度已经不是主要矛盾了!!
 
除非全用 api 可能会小一些,form 就有 200 k 了
主要是 ms 不肯给 borland 一些接口,如果有这些接口
delphi 编出来的东西和 vc 一样大小
pie 说得不错 1.4 M 不算大现在硬盘都 10 G 了谁还在乎
这些
 
把vc的mfc42.dll之类的文件加上vc编译出来的程序也不小,delphi程序也可以做的比vc程
序小,就是用vcl50.bpl等这些包。唉不过人家微软的在系统安装的时候就装mfc42.dll等一
大堆东西,borland的就没这个待遇。
 
编译速度快就行了。
 
微软比较霸道啊。
 
>>我在Project->Option里面清除了所有的编译选项,应用程序却不见减小
看看uses下面是不是有一些没有用到的系统文件(注意要在所有unit的uses中都清除)
>>有没有办法去掉它们,动态装入
用API——LoadLibrary和FreeLibrary,具体用法查帮助
 
用aspack压缩一下吧。
 
由于windows不是borland的
//sigh
 
1、关闭调试信息
选择Project|Options...,关闭Include TD32 debug info 复选框
2、去掉VCL的运行包。大概缩短250K.不过在没有delphi 的系统好象程序不能运行
假如操作系统是Borland公司发行的话,xixi...
 
; 其实我在乎执行文件大小的最主要的原因还是我要制作安装盘,可执行文件太大肯定有
很多的弊端。另外,我还想问一个制作安装盘的问题,就是我的程序中用的Data Acess和
data Control的控件只有Datasource,Table,DbGrid以及Query控件,那么在制作安装盘的
时候(我用的是Delphi自带的InstallShield):
1、需不需要全部安装BDE?
2、BDE由于比较大,而针对我上面列出的控件需要安装那些部件或文件?也就是说,最小
化的BDE安装需要那些文件?
3、我的程序用到SPCOMM串口控件,是不是在安装程序中需要注册,怎么注册?
由于制作安装盘都是用软盘,因此还是请各位高人详细指定小弟。
 
使程序的尺寸变小的方法:1。使用aspack.exe,一般可以减少一半。2。使用运行包。
程序制作安装盘不需要全部BDE。
如果你的SPCOMM为OCX控件旧需要注册,可使用regsvr32 spcomm.ocx
 
一以前讨论过n遍了
aspack or runtime pakage
 
同阿蒙、snake、bq
 
BDE不需要全装的,找你需要的就行了。
>>就是我的程序中用的Data Acess和data Control的控件只有Datasource,Table,DbGrid以及Query控件
只要这几个就差不多了:Blw32.dll Idapi32.dll Fareast.bll 、 Usa.bll、Idr20009.dll、
Iddao32.dll、Idsql32.dll
 
PEcompact 压一下就能小一半!
 
接受答案了.
 
后退
顶部