怎样使delphi编的程序瘦身?!(100分)

  • 主题发起人 wshiangdl
  • 开始时间
Aspack压缩最省事
还可以用KOL,很小的
 
为什么每人推荐UPX呢?
这个压缩率是最高的阿!
 
我觉得程序大点没关系,但重要的是占用资源少,运行速度快。
 
ASpack在这里也有:http://delphi.mychangshu.com/dispdoc.asp?id=588
 
谢谢各位的解答,经过大家的开导和我最近的规划,这个问题初步得到了解决!
一方面用动态库去封装一些东西,另一方面在程序中动态的创建一些对象!
而且我现在的程序,Treeview,Listview和菜单都是动态创建的,而且用户没有这个权限,
连相应的菜单都可以不用生成了,而不是灰显,有点个性化的样子,自己认为还不错!
这么多人回答问题,而只有这么多钱,只能大家平均分分了!
不过现在又有问题出来了!!
aa:array[0..10] of char;
s:string;
i:integer;
strcopy(aa,s);
for i:=0 to length(s)-1do
aa:=chr(ord(aa shl 4));
s:=strpas(aa);
而且在sql server 中设置了一字段 rd (char类型,宽度100),请问
若把移位操作后的s给字段赋值,为什么每次都不一样(做登录口令加密)!
 
三层系统的客户端:
程序 有 100 个界面,包括20各ReportBuilder报表,总共 3.6M
大家认为大不大?
 
不大,我们的7M多呢 :(
 
有人说,最酷的程序员用KOL,我感到震惊。KOL是对DELPHI的系统改造,它以瘦身程序而著称。
我实验了一下,用DELPHI3编译一个空白的FORM程序,有187K,用DELPHI4有235K,用DELPHI5则为287K!一个小小的程序竟有这么大的体积,真让人吃不消。如果做一个长驻内存的程序,那怎么行!
于是,我在寻找。既要编程的“可视”性,又要体积小,找了半天,几个网友(特别是孤岛的提醒)说,最酷的程序员用KOL!是吗?于是,在一个寂静的午夜,我找到了KOL11.53版,他的老家是http://bonanzas.rinet.ru/
我下载了kol.zip,mck.zip,systemdcu.zip for D5
经过安装与摸索,终于有了深刻的体验!
安装时,把kol.pas放到mck目录下,然后设置好路径,选MirrorKOLPackage.dpk安装,安装成功后控件板上出现KOL标签,共计有39个控件。然后做实验:
1,在FORM窗体上放一个KOLProject1 和KOLForm1,分别对两个控件进行设置,FORM1不要去管它,此时它虽然可视,但是已经成为空壳!
编译,执行程序,一个空白的FORM出现。体积只有24.5k!
再用UPX压缩减肥,结果只有14.5k!(如果用正常的D5的FORM空白页做程序,则有283K,压缩后起码也有121K)
成功了,这正是我梦寐以求的体积!只有14.5K!
我又做了几个实验:数据如下:
2个FORM:28.5k UPX后是17K
一个FORM+托盘+菜单:31.5k,UPX后是18.5k
一般地说,DELPHI 5环境下的瘦身KOL程序经过UPX后,还可以有1.7倍的压缩率。
 
FORM 再多,EXE不会增大多少了。
因为该有的类,其中都有了。
 
UPX压缩不如ASPACK来的小
我用过几乎所有的压缩加壳软件
目前压最小的就是ASPACK了
告诉大家以免大家走弯路
还有就是777kkk 的建议大家也可以试试看
 
我觉得,只要你创建了Form,再创建多个Form,其大小也是差不多的!
因为From的公共代码已加入了程序中,再创建Form,程序只要记录From的
属性值就成了,所以程序大小不会有很大的变化(我自己想的)!
 
kol.........
有意思
我想试试
 
paf 很对!
每增加一个Form程序顶多增加十几K
Project-Options-Packages-Build with runtime packages
选上吧,程序只有几十K但是没有Delphi的电脑就不能运行了
有没用人听说过类似 Delphi动态链接库的东西,把VCL单独编译出来(就先那个VB的一兆多,可以单独下载)
 
顶部