如果我正在创建SFX存档,我可以通过启用Temp Mode(文件被解压缩到临时文件夹)来设置一个可选问题,这会在用户运行提取程序时向用户提供一个很好的“你确定”类型的问题
但是,通过启用“临时模式”,它完全忽略“提取到路径”设置。但是,如果我禁用Temp Mode,问题就不可用了!
如何将其提取到我想要的路径,但也可以设置该可选问题?
答案 0 :(得分:1)
@ John ......
这在理论上听起来不错,但它不起作用。
一旦RAR检测到TempMode =开关,它就会忽略Path =&提取至%TMP%。 在TempMode中,WinRar会在安装完成后自动删除%TMP%文件。
麻烦的是,有时WinRar会在安装完成之前删除文件。 在某些软件包上,勾选wait命令会使WinRar等到完成。
在需要重新启动的软件包上,%TMP%文件将丢失。 为了询问用户“安装示例应用程序?”然后提取文件,重启,&完成设置,我不得不使用一些小技巧,这可能会帮助上面的用户。
1:创建SFX>像往常一样TempMode,所以你有“安装示例应用程序?”框。
2:Setup = xCopy>使用xcopy cmd将文件复制到所需目录
3:设置=示例应用
通过将文件复制到新位置,SFX关闭后不会删除它们。
确定要将文件提取到的位置。 示例:%TMP%\ Folder \ App.exe
创建TempMode SFX“安装示例应用程序?” 安装=%TMP%\文件夹\ APP.EXE
创建包含文件的新SFX + TempMode SFX 路径=%TMP%\ Folder \ TempMode SFX.exe
运行SFX> “安装示例应用程序?”出现>如果“是”,则应用运行。
还有一种方法可以创建Path = SFX,打包到TempMode SFX方法,但这会导致包被解压缩到%TMP%,然后将文件解压缩到所选位置,或者双提取。
这也可以,但方法2可以更好地工作,只需要一点预先考虑和计划你想要提取文件的位置。
希望这有帮助!
答案 1 :(得分:0)
在对话框高级SFX选项的选项卡模式按下按钮帮助后打开帮助页面包含段落
如果设置了解压缩到临时文件夹选项,则还应指定安装程序。在此模式下,SFX会忽略提取参数的路径。
原因很简单,并在帮助中解释了本段。通过将存档解压缩到临时文件夹,被调用的安装应用程序(* .exe,* .bat,...)负责将文件复制到安装文件夹。
但是,如果您希望WinRAR SFX将存档直接提取到预定义的文件夹中,并且您希望在开始提取之前让用户取消安装:
另一种可能性是在标签许可证上输入标题,将问题文本输入为许可文本,从而导致执行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”