加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何减小Delphi dll的大小?

发布时间:2020-12-15 04:19:04 所属栏目:大数据 来源:网络整理
导读:我最近从Delphi 7迁移到了Delphi XE3. Delphi 7中的107kb的dll文件现在编译为2.7 MB. 另一个114kb现在是4.7 MB! 这是正常的吗? 我该怎么做才能减小文件大小? 如果您需要更多信息,请询问. 更新: 这两个dll文件都已在发布模式下编译. 遵循梅森的建议: 4.7
我最近从Delphi 7迁移到了Delphi XE3.

Delphi 7中的107kb的dll文件现在编译为2.7 MB.
另一个114kb现在是4.7 MB!

这是正常的吗?
我该怎么做才能减小文件大小?
如果您需要更多信息,请询问.

更新:

这两个dll文件都已在发布模式下编译.

遵循梅森的建议:

4.7MB文件减少到834kb,2.7MB文件减少到2.1MB.
2.1MB文件使用Generics和一个名为nExcel的外部库来生成Excel文件.虽然在文件大小较小时也使用了nExcel,但是使用泛型是代码的新增功能,我想这可能是文件大小保持相当大的原因.

解决方法

其中一些是不可避免的;随着更多功能的增加,RTL变得越来越大.但是,由于在Delphi 2010中添加了扩展的RTTI,因此大量增加的原因.

您可以通过在任何uses子句之前将以下两行放在主项目文件中来解决此问题:

{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
{$WEAKLINKRTTI ON}

这些将导致编译器在整个项目中最小化扩展的RTTI. (请注意,这意味着您将无法使用RTTI功能.但由于这是Delphi 7项目,您可能还没有使用它.您需要阅读扩展的RTTI并查看是否可以找到有用的东西.)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读