无忧启动论坛

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

请教--如何实现光盘中的自解压ZIP解压的同时运行其中的文件?

[复制链接]
跳转到指定楼层
1#
发表于 2006-10-11 11:29:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
注:1.在DOS下,
        2,不用批处理
      3,现在已用PKZIP做成ZIP,ZIP2EXE 将其转成自解压EXE,但不知道怎样加自运行其中程序的命令?
     4.如果上面的不通,不知7ZIP有这个功能否?
    5.或者有其他方法?


另:搜索不对新人开放,十分不便

[ 本帖最后由 yujinhui 于 2006-10-11 11:31 AM 编辑 ]
2#
 楼主| 发表于 2006-10-12 07:38:06 | 只看该作者
怎么没人知道啊,
我是看了RAR在WINDOWS下的功能才想实现DOS下的用法

http://bbs.wwwfox.net/archiver/?tid-38004.html
回复

使用道具 举报

3#
发表于 2006-10-12 07:50:30 | 只看该作者
这个软件没用过,也不知道你要实现什么功能。

不过你可以用bat
回复

使用道具 举报

4#
发表于 2006-10-12 10:18:57 | 只看该作者
ARJ 不知道可不可以做到,不过刚才看了最新的 ARJ 2.84a 的帮助,可以支持自解压后运行某个命令,不过好像需要用户确认执行,我没有发现自动确认的选项,不知道楼主能否通过管道命令来实现
  1. abc.EXE -e -x -m -zcmo c:\111\ -!mcab.bat
复制代码

abc.exe 是 ARJ 创建的自解压文件,mcab.bat 是 abc.exe 压缩包中的某个文件。不知道这样的命令可不可以实现:
  1. echo y|abc.EXE -e -x -m -zcmo c:\111\ -!mcab.bat
复制代码

我没有条件在纯 DOS 下测试。

另外,楼主看看 7-Zip、WinZip、WinRAR 的 DOS.SFX 有没有相关的功能。
回复

使用道具 举报

5#
 楼主| 发表于 2006-10-12 21:23:44 | 只看该作者
谢谢,

我还没有试ARJ,下了个,7ZIP,

按照他的帮助,copy /b 7zCon.sfx  + config.txt + archive.7z archive.exe

其中config.txt是自释放配置文件,可是不行,是不是只针对WINDOWS 的SFX?
   
附它的帮助:
-sfx (创建自释放档案) 选项
创建自释放档案。

语法
-sfx[{SFX_Module}]

{SFX_Module}
指定将被添加到压缩档案的自释放(SFX)模块。然而被指定的模块必须和 7z.exe 文件在同一目录。如果 {SFX_Module} 未指定,7-Zip 将使用命令行自释放模块 7zCon.sfx。

SFX_Module 说明
7zC.sfx Windows 版本。
7zCon.sfx 命令行(DOS)版本。
7zS.sfx Windows 安装版本。
7zSD.sfx Windows 安装版本(需调用 MSVCRT.dll)。

除 7zC.sfx 之外,大多数的自释放模块都是未压缩的。您可以使用 UPX 程序 (http://upx.sourceforge.net) 来压缩这些模块。在使用 UPX 程序压缩之后,自释放模块的大小将比压缩之前减小 40-50%。

自释放安装模块
自释放安装模块(7zS.sfx 和 7zSD.sfx)可让您创建软件的安装程序。这类模块将释放文件到一临时文件夹,然后运行指定的程序来进行安装。安装之后再自动删除临时文件。要创建自释放档案必须有三个文件:自释放模块、安装程序配置、7z 压缩档案。其中安装程序配置文件是可选的。您可以使用下列命令来创建安装程序:

copy /b 7zS.sfx + config.txt + archive.7z archive.exe

请注意上述文件的输入顺序:*.sfx、*.txt、*.7z。最后的 archive.exe 即为生成的安装程序。

选项 -y 使用在自释放安装模块中可设置释放时是否为安静模式。

安装程序配置文件格式
配置文件包括安装程序的命令行。文件要以字串 ;!@Install@!UTF-8! 开头,以 ;!@InstallEnd@! 结尾。且文件必须使用 UTF-8 编码。文件中还需包含下列变量:

ID_String="Value"

ID_String 说明
Title 对话框信息标题。
BeginPrompt 安装前提示信息。
RunProgram 欲执行命令。若添加子命令 %%T 则会把文件释放到系统的临时目录。


您可以省略上述任何一部分。

配置文件示例
;!@Install@!UTF-8!
Title="7-Zip 1.00"
BeginPrompt="应用程序将安装 7-Zip 1.00,是否继续?"
RunProgram="Setup.exe /T:%%T"
;!@InstallEnd@!

程序将以 BeginPrompt 中的信息提示用户,再执行 RunProgram 中的命令。然后程序将使用 .inf 文件的内容并调用压缩包中的 advpack.dll 文件进行安装。

示例
7z a -sfx a.exe *.txt

添加 *.txt 文件到自释放档案 a.exe 并使用默认的命令行自释放模块。

7z a -sfx7zC.sfx a.exe * -r

添加所有文件到自释放档案 a.exe 并使用 7zC.sfx Windows 版本的自释放模块。

可以和此选项结合使用的命令
a (添加), d (删除), u (更新)
回复

使用道具 举报

6#
发表于 2007-9-15 20:29:49 | 只看该作者
7zip现在可能还没有DOS下的解压模块。
这个7zcon.sfx,con是console,还是在win下执行的。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-15 16:50

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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