0

私はいくつかのプログラムで RAR SFX を持っています。いくつかの条件に応じて (コマンド ライン パラメーターは私ができることです)、SFX は TEMP フォルダーまたは現在のフォルダーに抽出する必要があります。

それは基本的にソフトウェアの新しいバージョンです。Web からダウンロードした場合、展開は temp フォルダーに移動し、インストールは SW が配置されているマップを検索します。プログラム内からダウンロードした場合、ダウンロードパスに関連するプログラムの場所がわかり、抽出は現在のフォルダーに移動する必要があります...

RAR SFX を使用してこれを達成する方法はありますか?

TNX。

4

2 に答える 2

1

このバッチ コードは、パスワードで保護されたSFX ( S 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%"
于 2016-06-30T22:24:12.507 に答える
1

プログラム内では、ファイルの SFX ヘッダーをスキップして、必要なフォルダーに通常の RAR ファイルとして抽出できます。コードのリントがほとんど必要ないか、Winrar または 7zip ライブラリを埋め込む必要があります。

于 2016-03-08T12:15:47.527 に答える