如何从批处理文件创建自动执行的WinRar SFX文件?

12

我有一个第三方安装程序,我希望用户能够下载并运行它作为我编写的应用程序的前提条件。该安装程序可以使用参数来进行被动安装,使用户可以观看进程的进度但无需与安装交互。

以前,我通过在WinRar中创建SFX文件来实现此行为。从WinRAR GUI的选项中,您可以指定一个文件在解压缩后启动,以及向应用程序传递参数。

是否有一种方法可以使用控制台创建SFX文件并设置这些自动执行属性?我正在尝试创建一个批处理文件来完成所有这些操作。

以下是我的批处理文件内容:

C:\Progra~1\WinRAR\rar a -m0 installer_archive.rar install_me.exe
C:\Progra~1\WinRAR\rar s installer_archive.rar installer_auto_extractor.exe

在最后一步之后,我应该做什么来更新SFX?

1个回答

31

简单的方法是这样的:

rar a -r -sfx -z"f:\xfs.conf" auto_install install_me.exe

它会在Windows中自动创建auto_install.exe。而且你需要创建一个xfs.conf文件用于sfx配置; 我的示例是:

; The path to the setup executable
Setup=install_me.exe
; Extract the files to a temporary directory
TempMode
; Use semi-silent mode
Silent=1
; Overwrite any existing files
Overwrite=1
; The title of the SFX archive
Title=Running
; The text to show initially when the user clicks on the SFX archive (will only matter if using Silent=0)
Text
{
The book is preparing to start.
}

如果你仍然有问题,请告诉我。


3
我会尝试做同样的事情。你能否提供一个参考,说明可以在这个配置文件中放置什么内容(特别是寻找默认提取目录以及前后提取命令)。 - JMorgan
2
@JMorgan 我认为这个Acritum网站的页面应该可以帮助你了解可用的命令。 - thisismyrobot
你可以考虑使用-cfg-开关来避免依赖WinRAR的默认设置。否则,WinRAR的默认设置可能会覆盖你的-z"f:\xfs.conf"文件内容。祝好! - Julio Nobre

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接