WinRAR SFX可选消息但不在临时模式下

时间:2015-03-13 10:33:25

标签: winrar sfx

如果我正在创建SFX存档,我可以通过启用Temp Mode(文件被解压缩到临时文件夹)来设置一个可选问题,这会在用户运行提取程序时向用户提供一个很好的“你确定”类型的问题

但是,通过启用“临时模式”,它完全忽略“提取到路径”设置。但是,如果我禁用Temp Mode,问题就不可用了!

如何将其提取到我想要的路径,但也可以设置该可选问题?

3 个答案:

答案 0 :(得分:1)

@ John ......

这在理论上听起来不错,但它不起作用。

问题:

一旦RAR检测到TempMode =开关,它就会忽略Path =&提取至%TMP%。 在TempMode中,WinRar会在安装完成后自动删除%TMP%文件。

麻烦的是,有时WinRar会在安装完成之前删除文件。 在某些软件包上,勾选wait命令会使WinRar等到完成。

在需要重新启动的软件包上,%TMP%文件将丢失。 为了询问用户“安装示例应用程序?”然后提取文件,重启,&完成设置,我不得不使用一些小技巧,这可能会帮助上面的用户。

1:创建SFX>像往常一样TempMode,所以你有“安装示例应用程序?”框。

2:Setup = xCopy>使用xcopy cmd将文件复制到所需目录

3:设置=示例应用

通过将文件复制到新位置,SFX关闭后不会删除它们。

替代解决方案#2

确定要将文件提取到的位置。 示例:%TMP%\ Folder \ App.exe

创建TempMode SFX“安装示例应用程序?” 安装=%TMP%\文件夹\ APP.EXE

创建包含文件的新SFX + TempMode SFX 路径=%TMP%\ Folder \ TempMode SFX.exe

运行SFX> “安装示例应用程序?”出现>如果“是”,则应用运行。

替代解决方案3:

还有一种方法可以创建Path = SFX,打包到TempMode SFX方法,但这会导致包被解压缩到%TMP%,然后将文件解压缩到所选位置,或者双提取。

这也可以,但方法2可以更好地工作,只需要一点预先考虑和计划你想要提取文件的位置。

希望这有帮助!

答案 1 :(得分:0)

在对话框高级SFX选项的选项卡模式按下按钮帮助后打开帮助页面包含段落

  

如果设置了解压缩到临时文件夹选项,则还应指定安装程序。在此模式下,SFX会忽略提取参数的路径。

原因很简单,并在帮助中解释了本段。通过将存档解压缩到临时文件夹,被调用的安装应用程序(* .exe,* .bat,...)负责将文件复制到安装文件夹。

但是,如果您希望WinRAR SFX将存档直接提取到预定义的文件夹中,并且您希望在开始提取之前让用户取消安装:

  1. 请勿在模式标签上使用解压到临时文件夹
  2. 而是在常规标签上设置提取路径
  3. 在标签模式上选择全部显示
  4. 在选项卡更新覆盖所有文件选项卡上选择提取和替换文件提取和更新文件
  5. 在编辑字段文本和图标选项卡上为用户输入有用的文本要在SFX窗口中显示的文本,其中包含相关信息,以便用户可以决定何时按下按钮提取安装,并在执行SFX存档时按取消按钮。
  6. 另一种可能性是在标签许可证上输入标题,将问题文本输入为许可文本,从而导致执行SFX存档,首先显示对话框"许可文本"现在是按钮接受拒绝的问题。

    您的第三种可能性是创建要使用其他名称的SFX副本,并使用免费Resource Hacker之类的工具来根据您的需要自定义此SFX,即更改图标,位图,文本对话框中的按钮和位置,对话框的大小等。这是明确允许的,因为您可以在页面上的 WinRAR 的帮助下阅读标题为 GUI RAR和ZIP SFX模块(Default.SFX和Zip.SFX)即可。例如,您可以重新定义许可证对话框的布局,使其类似于问题消息框,其中自定义SFX中的按钮为。我将此解决方案用于使用WinRAR SFX存档安装/更新的2个应用程序,使用Resource Hacker创建这样的自定义SFX非常容易。

答案 2 :(得分:0)

创建提取包&保留问题框功能:

1:创建提取包,就像你想要的那样。

2:使用WinRar编辑评论文件以添加TempMode =“运行应用程序?”,“示例标题”

示例:TempMode =“安装MyApp?”,“Vista◦MyApp2.0◦x32/ 64”