LZMA demo挑选使用备忘

时间:2023-01-20 20:15:03

一、源码下载:http://sourceforge.net/projects/sevenzip/

二、各种EXE及其功能

代码里面有很多的dsw工程,功能不一,size不一,需要挑选合适的加入到自己的工程中,下边是今天对各个工程做测试得出的结果,汇总下有利于挑选,源码是lzma压缩算法的,部分信息可以从源码的lzma.txt文档里看到:

1、C文件夹下的lzmautil编译出来的是:7lzma.exe,这个exe只能压缩、解压单个文件对单个文件。
2、C文件夹下的7z编译出来的是:7zDec.exe,只能解压(可以是单个压缩包对多个文件)。/MD编译选项下的这个exe只有39KB。
3、C文件夹下的sfxSetup编译出来是:SfxSetup,应该是一个自解压的文件,因为代码在解压的时候,拿的是自身这个文件去当压缩包解,没用上。
4、CPP文件夹下的client7z.exe,依赖DLL,需要加入7z.dll,没用上。
5、CPP文件夹下的LzmaCom工程,编译出来是lzma.exe,支持压缩、解压,只能是单文件对单文件的,适用于程序内部使用的:使用lzma.exe压缩出来的文件,无法使用7z.exe打开,7z.exe压缩的单个文件,也无法使用lzma.exe做解压。像7lzma.exe。
6、CPP文件夹下的Alone工程,编译出来是7zr.exe。可以用于压缩、解压:LZMA\BCJ\BCJ2 压缩算法。设置压缩算法的参数为-m,如-m0=BCJ2。这个7zr.exe号称7z.exe的精简版。
相关说明:
http://www.7-zip.org/sdk.html
对于压缩格式、压缩算法,开下7z GUI界面看看各种选择。