使用使用VCL类库 delphi编译生成的EXE文件一般都比较大,有什么办法能有效减小他的大小.

解决方案 »

  1.   

    1.引用的单元会影响EXE和DLL的大小,把Uses中不需要的单元去掉,可以变小一些。
    当然如果直接用SDK的方式来开发,那是最小的。SysUtils.pas System.pas sysinit.pas里面有很多你用不到的公用变量和类型定义,你可以
    另起炉灶,把你的程序要用到的变量,函数,类型拷贝到另一个同名的pas文件中,编译时不用
    Delphi的集成环境编译,用命令行dcc进行编译,注意要把你新建的基本库pas也包含进去
    如  DCC32 -Q -DDLL System.pas sysinit.pas MyProject.dpr -M -Y -Z -$D-
    其中system.pas sysinit.pas是从原来的pas中挖出来的一些类型定义,函数等.
      

  2.   

    2.资源文件单独使用,不要编译在exe文件里
    3.用压缩工具Aspack
    4.少用一些image等大容量的第三方控件
    5.也可以调用DLL来减少EXE的大小
      

  3.   

    用ASPACK.EXE这个软件来压缩一下EXE文件.
    呵呵,没有楼上的专业:)
      

  4.   

    aspack压缩有时运行会出问题
    (特别在formcreate、formshow中调用halt、formclose等中止运行的操作频繁出现)
      

  5.   

    用upx压缩啊,www.ccrun.com有下载的不过现在用户的硬盘都比较大,所以...
      

  6.   

    一般都用UPX
    可以直接压缩exe类型的东西
    自己到网上看看
    找不到我给你发
      

  7.   

    在Project的Options里,Packages属性页里选中Runtime Packages中的Build with runtime packages,可以立竿见影的给你的程序减肥。缺点是:你的程序必须连着运行库一起发布。
      

  8.   

    去掉不用的单元,用Aspack压缩!
      

  9.   

    我觉得模块化是最好的解决方法,需要修改那块,也不用把整个系统编译一次,可是到底用哪种方式最好呢,比如说DLL或者包?大家可以说说啊!
      

  10.   

    Project-->Option-->Packages-->选种 Build With Runtime Packages 这个选框再编译,EXE会小很多