减压过程何时发生,solidbreak标志在Inno Setup中如何真正起作用?

问题描述

在Inno Setup中有一个SolidCompression这样的东西,在[Files]部分中使用了一个标志,即solidbreak。谁能向我解释上述标志是如何工作的,何时真正需要使用它以及何时进行减压过程?

解决方法

固态压缩意味着压缩文件,就好像所有文件只是一个大文件一样。这通常会带来更好的压缩效果,因为在一个文件中建立的压缩知识将被带到下一个文件中,而不是重新启动。缺点是,要在安装过程中解压缩特定文件,必须先解压缩所有文件。

使用solidbreak标志时,它告诉压缩引擎拆分固定压缩并在涉及到该标志的源时开始新的流,因此,如果该文件专门需要解压缩后,解压缩代码可以简单地查找到文件在其开始处的位置。基本上,上面的缺点消失了,但随后,这种压缩知识的一些好处也消失了。

如果要使用实体压缩,并且必须安装所有文件,请不要使用solidbreak,但是如果有用于选择模块的复选框列表,则可以可能希望考虑将solidbreak应用于某些或所有可选模块。如果不这样做,即使所选选项只需要一个文件,也将解压缩所有文件。确切的结果会随文件大小等的不同而变化,所以我只能说您可能不得不尝试才能看到结果。