WinRar SFX,解压到动态文件夹

时间:2016-03-08 11:47:31

标签: rar sfx

我有一些RAR SFX程序。根据某些条件(我可以执行命令行参数),SFX应该提取到TEMP文件夹或当前文件夹。

它是该软件的基本新版本。 如果从Web下载,则提取应该进入临时文件夹,然后安装搜索SW所在的地图。 如果从程序内部下载,那么我知道相对于下载路径的程序位置和提取应该进入当前文件夹......

我可以使用RAR SFX实现这一目标吗?

TNX。

2 个答案:

答案 0 :(得分:0)

在程序中,您可以跳过文件的SFX标题,并将其作为常规RAR文件提取到文件夹中。 它需要很少的代码或嵌入Winrar或7zip库。

答案 1 :(得分:0)

此批次代码向您展示我们如何创建 SFX S el F -e X 追踪)如果你想要添加它们,也可以使用密码和自定义图标进行保护

@echo off
Set SFX_Name=TestSFX.exe
Set SfxOptions=SfxOptions.txt
Set AddFile=MyBatchFile.bat
Set Icon=HackooIcon.ico
Set Winrar="%ProgramFiles%\WinRAR\WinRar.exe"
Set ExtractedPath=%tmp%\hackoo
Set Setup=%ExtractedPath%\MyBatchFile.bat
Set Password=hackoo123

(
    echo ;The comment below contains SFX script commands
    echo Path="%ExtractedPath%"
    echo Silent=1
    echo OverWrite=1
    echo Setup="%Setup%"
)> "%SfxOptions%"

%Winrar% a -c -cfg- -ep1 -idq -m5 -mdg -r -s -sfx -y -iicon"%Icon%" -hp"%Password%" "-z%SfxOptions%" "%SFX_Name%" "%AddFile%"
if errorlevel 1 goto Failure
::del "%~dp0SfxOptions.txt"
goto :EOF

:Failure
::del "%~dp0SfxOptions.txt"
echo.
echo Error on creation of "%~dp0%SFX_Name%"
echo.
pause

对于其他开关和命令,您可以执行此批处理以打开Winrar的帮助文件:

@echo off
Set WinrarHelp=%ProgramFiles%\WinRAR\WinRAR.chm
Start "" "%WinrarHelp%"