自解压原理介绍及制作 |
您所在的位置:网站首页 › 压缩包变图片原理 › 自解压原理介绍及制作 |
目录 自解压文件: 原理: 自解压文件制作 —— 基于WinRAR: WinRAR命令行创建自解压文件: 自解压文件制作 —— 基于7z。 自解压文件:一个 SFX (SelF-eXtracting)自解压文件是压缩文件的一种,因为它可以不用借助任何压缩工具,而只需双击该文件就可以自动执行解压缩,因此叫做自解压文件。同压缩文件相比,自解压的压缩文件体积要大于普通的压缩文件(因为它内置了自解压程序),但它的优点就是可以在没有安装压缩软件的情况下打开压缩文件(文件类型为·exe格式)。 原理:
sfx文件通常为二进制文件,用作压缩解压软件的自解压程序模板。其实就是一个exe程序,组成格式如上 主要分为三部分: sfx文件打头,这是一个真正的程序,实现了根据config.txt配置信息解压缩尾部的压缩文件,并执行相应的操作config.txt文件做相关的配置,比如标题,解压缩位置,解压缩之后执行什么样的操作等压缩文件,这里是真正的数据内容自解压文件制作 —— 基于WinRAR: 选中要压缩的文件 -> 右键 -> 添加到压缩文件:
勾选创建自解压格式压缩文件。-> 确定:
得到test.exe
双击exe,弹出解压提示窗,继续即可完成解压:
自解压高级设置: 右键 -> 添加到压缩文件 -> 勾选创建自解压格式压缩文件 -> 切换高级页签 -> 点击自解压选项: 这里可以设置解压路径,exe图标,提取后运行文件,是否静默等 高级选项。 例如:将上述文件高级选项设置为:解压路径,提取后运行,静默设置如下图: 生成exe后,双击,可看到,解压出了11文件夹,并自动打开了bbb.txt文档: 右键test.exe,选择用WinRAR打开,查看注释,发现注释中包含自解压命令脚本。—— WinRAR的自解压命令是可以从注释中装载的。 WinRAR命令行创建自解压文件: WinRAR安装后,安装目录有WinRAR.chm帮助文档,里面介绍了命令行参数的调用方式。 以上述文件举例: 命令行写法为: "C:/Program Files/WinRAR/WinRAR" a aaa.exe aaa bbb.txt -sfx -iiconh:/gg/1.ico -zzhushi.txt双击aaa.txt,效果与上面GUI操作一致。 注释文件文本如下: 自解压文件制作 —— 基于7z。 https://www.7-zip.org/ 下载7Z安装包。安装后,安装目录有对应的帮助文档。7-zip.chm 根据7Z文档中 -sfx 的使用介绍。 7z a -sfx a.exe *.txt 命令可进行文件自解压。 以上述文件为例,命令为 > "C:/Program Files (x86)/7-Zip/7z" a -sfx7z.sfx aaa.exe aaa bbb.txt运行可弹出解压提示窗。 但这个命令没办法包含高级命令选项。 如文档所述,高级命令选项需要借助配置文件: 注意其例子中使用的sfx文件为7zSD.sfx,该文件不存在与7z安装目录中,同样的操作方式用安装目录中的7z.sfx操作,不能完成自解压高级命令选项。 要完成该操作,需要下载7zSDK, https://www.7-zip.org/sdk.html 下载后bin\installer 目录中有demo,一个config.txt文件,用于包含高级选项配置,一个cr.bat包含打包命令。 该命令可直接运行。详细可下载文件查看并修改,不再赘述。 打包出的exe,如下: 右键查看详细信息: 全部为7z相关信息。 这个是7z的相关sfx文件自带的。(sfx本质其实就是一个exe,可以按字节偏移解压文件,并按配置文件运行文件。) 所以要修改这个信息,可以用resource_hacker工具,直接打开sfx文件,对其进行相应修改。截图如下:
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |