无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 54451|回复: 87
打印 上一主题 下一主题

用7zSfxTool制作PE专用的“自解压单文件版”(图文、工具下载)

    [复制链接]
1#
发表于 2011-2-19 13:05:16 | 显示全部楼层
  支持楼主。这个工具昨天晚上还在试,它还支持“不显示批处理窗口”的功能,可以将一个批处理与要解包的程序放在一起,用批处理启动解压的程序,自解压到PE下的临时文件夹,主程序运行期间,CMD窗口自动隐藏在后台不显示,CMD批处理可以在程序关闭后自动删除解压包的文件夹内所有文件,用以节省X盘的有限空间。已经成功。


没有看7zSfxTool的帮助,在指定解压路径时必须留空不填写,这样批处理就可以删除同目录下的文件夹,最后临时解压文件夹也自动消失。感觉这个功能非常好,比楼主提出的用PECMD方便些,因为在这个先执行的批处理里可以将需要解压的软件注册、复制文件、转移等许多操作,用PECMD可能要麻烦些。

个人理解,PE外部工具中许多其实都是备而无患,在PE中真正使用的工具极有限。因而一些程序用7Z极限压缩后打包成自解压程序可以节省不少的空间,但相对的说执行时间可能加长了。不过,分区工具ADDS的英文版,用WIM最大压缩后,体积约是5.8M,而用7Z极限压缩打包后,体积变到了4.7M,分区工具DG用WIM压缩后体积是1.95M,用7Z压缩打包约是1.38M,这些工具其实并不是很常用,类似的打包后将会使光盘体积节省不少,启动时虚拟的内存光盘也快些。


感谢了。

[ 本帖最后由 zxyy 于 2011-2-20 17:44 编辑 ]
回复

使用道具 举报

2#
发表于 2011-3-27 16:22:39 | 显示全部楼层
向老大报告个问题:
  
  为了节省进入PE后X盘有限的空间,可以将许多外置工具用楼主分享的“7-ZIP SFX TOOL”工具打包成自解压程序,在PE中建立快捷方式使用,由于其它盘的分区不可预料,需要时可以用百大正在写的Fbinst增强接口工具从UD隐藏分区中直接提取自解压程序到X盘执行,执行完毕后自动删除自身程序和临时文件夹中解压的文件,以节省X盘的有限空间。
  
  但现在出现了问题。“7-ZIP SFX TOOL”制作的自解压程序在其它任何物理分区上都可以完成删除自身解压包的操作,就是在X盘及其它虚拟盘上不行。试了几个不同的PE核心版本都如此,估计这与PE的核心文件不完整有关,也许是“7-ZIP SFX TOOL”删除自身的操作依赖于某个文件,而PE中均没有集成这个插件。
  
  不知老大及其它哪位朋友有时间帮忙解决此问题?或者将解压后执行的批处理做个改进,以便删除自身。已经试过,像老大图中那样先用一个批处理调用主程序,执行完后Temp中的临时文件倒是全删除了,但从UD中提取的自身程序却还在X盘,除了极个别软件可能与它释放的插件有关(即使在C盘NT系统下也不能删除自身的),或者有何好的方法将解压后运行的批处理做个改进?请留意,我打包的程序在XP操作系统下均可以删除自身,但在PE下的X盘是不行的,在PE下的其它可见物理分区是可以的。

  我写的批处理如下,可以启动需要调用的主程序,在“7-ZIP SFX TOOL”解压路径中留空,完成后可以自动删除临时文件夹中释放的文件。不过,即使在下边批处理中加上删除指定X盘的“PSPR.exe”源程序也不行,说明这个批处理应该先于自删除程序结束。


@echo off
color 3e
call
echo.
cd /d "%~dp0"
start /wait .\PSPR\PSPR.exe
rd /s /q PSPR
del %0
exit

  谢谢了。目前我难以解决此问题,尚无好的方法,只有在Cleantemp.cmd中增加删除指定自解压程序的命令,以便能同时清空从UD中提取的那个文件夹。

[ 本帖最后由 zxyy 于 2011-3-27 16:37 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-5-3 18:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表