NSIs Solid (solid) compression problem by the decompression box to decompress the box shows the logic is such a 1, run the first step is to perform a CRC check, the process of verifying about 4KB step reading exe file, and do CRC check, Each check checks whether the current check time has exceeded 1s, more than the Show decompression box 2, compressed files when the solid algorithm is, all files in the following format | filesize| Filecontent| filesize2| Filecontent2| ... Put all the files into a large buffer, and then LZMA compression decompression, each decompression of a file set a 500ms timeout, if the process of extracting this file exceeded this threshold, then the decompression box to extract a file, the file after the decompression of the large buffer in the offset, so, Decompression process is a little bit to decompress the dabuffer, once the extracted data to meet the requirements of the size of the offsert-size to return, so if this file in the compression process, it will result in the need to extract all the previous files to extract the file of the problem The decompression box is mutually exclusive to the main form, so once the main form of the installation is created, the Unzip box is not displayed
Resolution: 1, to ensure that the order of compression and decompression sequence consistent, so that the decompression time of a single file to the minimum 2,init and the plug-in DLL to ensure the minimum use of 3, the use of resverfile to enforce constraints on some file priority compression
Solid (solid) compression principle of NSIs