我需要减少可执行文件的大小,并且通常一些“不必要的”uses
在我的可执行文件中占用一定的大小。
例如:
Unit1
与Unit2
相关联,但这两个单元的导入为“System.SysUtils
”。
然后导入“System.SysUtils
”两次,我们假设此单位的大小为200KB
。由于我有两个导入,总大小是400KB
吗?
因为它们经常发生在java中。
或者,我可以使用单位“System.SysUtils”进行多次导入而不更改可执行文件的大小吗?
答案 0 :(得分:6)
你有多少次使用单位"使用"。只要它在任何地方使用,它将被编译一次。否则,它不会。
只有当你有不同的编译器配置(Debug / Release,Win32 / Win64等)(无论如何会输出不同的文件)或完全不同的项目时,才会进行多次编译。
如果您希望减小可执行文件的大小,请查找已使用但实际未使用的单元。考虑到您使用的许多单元已经在使用它们,这可能很棘手。尽你所能清理它们。还有许多其他方法可以减小输出文件的大小。
答案 1 :(得分:1)
使用http://www.peganza.com/download.html中的ICARUS 它将分析使用清单以及不需要的单位。
答案 2 :(得分:0)
免费提供工具集:可以从http://www.cnpack.org/下载的CnPackIDE向导 我停用了大部分但我喜欢“Uses Cleaner”。
答案 3 :(得分:0)
它不会被多次包含,所以尺寸仍然是200kB。您可以进行多次导入