2016-03-08 170 views
0

我有一些程序的RAR SFX。根据一些条件(命令行参数是我可以做的),SFX应该提取到TEMP文件夹或当前文件夹。WinRar SFX,解压到动态文件夹

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

任何方式,我可以使用RAR SFX实现这一点?

TNX。

+0

我不清楚你想做什么,但我认为这是可能的。但是你的问题只针对堆栈溢出而只是任务描述,请参阅帮助主题[我可以在这里询问什么主题?](http://stackoverflow.com/help/on-topic)* WinRAR *有一个帮助详细解释了所有可用的SFX选项。您应该先阅读关于这些选项的帮助。 – Mofi

回答

0

在你的程序里面,你可以跳过文件的SFX头文件,并将其解压缩为想要的文件夹中的常规RAR文件。 它需要少量的代码或嵌入Winrar或7zip liraries。

+0

嗯,我从来没有与rar或7zip librarys合作,对该部分的任何指示? – kzendra

+0

@kzendra only RAR? http://www.7-zip.org/sdk.html看起来更强大 – eri

0

这个批处理代码说明了我们如何能够创造一个SFX小号 EL ˚F -e X tracting)太多,如果你想添加当然他们有一个密码,并使用自定义图标保护

@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%" 
相关问题