-sfx (Create SFX archive) switch
Vytvorí samorozbaliteľný archív.
-sfx[{SFX_Modul}]
Určuje SFX modul, ktorý sa začlení do archívu. Tento modul musí byť umiestnený v rovnakom priečinku ako súbor 7z.exe. Ak {SFX_Modul} nie je nastavený, 7-Zip použije štandardný konzolový SFX modul 7zCon.sfx.
SFX_Module | Description |
---|---|
7z.sfx | Grafická verzia. |
7zCon.sfx | Konzolová verzia. |
7zS.sfx | Grafická verzia pre inštalátory. |
7zSD.sfx | Grafická verzia pre inštalátory (použije MSVCRT.dll). |
Všetky SFX moduly sú neskomprimované. Ak chcete moduly skomprimovať, môžete použiť program UPX (http://upx.sourceforge.net). Po skomprimovaní programom UPX sa veľkosť sfx modulov zmenší na 40-50% z pôvodnej veľkosti.
SFX moduly pre inštalátory sú začlenené do externého balíka (7z_extra). Tieto moduly si môžeme stiahnuť zo stránky www.7-zip.org. SFX moduly pre inštalátory (7zS.sfx a 7zSD.sfx) nám umožnia vytvoriť si svoje vlastné inštalačné programy, pretože tieto moduly rozbalia archív do dočasného priečinka temp, spustia zadaný program a po skončení programu odstránia súbory z priečinka temp. Samorozbaliteľné archívy pre inštalátory pozostávajú z troch súborov: SFX_Modul, Konfigurácia_inštalátora, Archív_7z. Vytvorenie inštalátora v tvare samorozbaliteľného súboru je možné zadaním príkazu:
copy /b 7zS.sfx + config.txt + archive.7z archive.exe
Ak chceme vytvoriť ešte menší inštalačný balíček, môžeme inštalačné súbory pred začlenením do archívu 7z najskôr rozbaliť.
Prepínač -y použije rozbaľovanie v tichom režime.
Tento konfiguračný súbor obsahuje príkazy pre inštalátor. Súbor začína reťazcom ;!@Install@!UTF-8! a končí reťazcom ;!@InstallEnd@!. Súbor musí byť napísaný v kódovaní znakov UTF-8. Súbor môže obsahovať niektoré alebo aj všetky nastavenia typu:
ID_Retazec="Hodnota"
ID_Retazec | Popis |
---|---|
Title | Nadpis správy |
BeginPrompt | Úvodná otázka |
Progress | Zobrazenie stavu inštalácie. Hodnota môže byť "yes" - áno alebo "no"- nie. Predvolená hodnota je "yes". |
RunProgram | Príkaz, ktorý sa má spustiť. Predvolená hodnota je "setup.exe". Ak chceme použiť cestu k dočasnému priečinku temp, kde sa rozbalia súbory, môžeme miesto cesty použiť reťazec %%T |
Directory | Predpona cesty priečinka pre "RunProgram". Predvolená hodnota je ".\\" |
ExecuteFile | Meno súboru, ktorý sa má spustiť |
ExecuteParameters | Parametre pre "ExecuteFile" |
Môžete použiť ktorékoľvek nastavenie.
Existujú dva spôsoby, akými sa spúšťa inštalačný program: RunProgram a ExecuteFile. RunProgram použijeme vtedy, ak chceme spustiť program z archívu .7z. ExecuteFile použijeme vtedy, ak chceme otvoriť dokument z archívu .7z alebo ak chceme spustiť príkaz v operačnom systéme Windows.
Ak použijeme RunProgram a zadáme prázdnu predponu priečinka: Directory="", systém vyhľadá spustiteľné súbory podľa nasledujúceho poradia:
;!@Install@!UTF-8!
Title="7-Zip 4.00"
BeginPrompt="Prajete si nainštalovať 7-Zip 4.00?"
RunProgram="setup.exe"
;!@InstallEnd@!
;!@Install@!UTF-8!
Title="7-Zip 4.00"
BeginPrompt="Prajete si nainštalovať 7-Zip 4.00?"
ExecuteFile="7zip.msi"
;!@InstallEnd@!
;!@Install@!UTF-8!
Title="Aktualizácia 7-Zip 4.01"
BeginPrompt="Prajete si nainštalovať aktualizáciu 7-Zip 4.01?"
ExecuteFile="msiexec.exe"
ExecuteParameters="/i 7zip.msi REINSTALL=ALL REINSTALLMODE=vomus"
;!@InstallEnd@!
7z a -sfx a.exe *.txt
pridá všetky súbory s príponou .txt do samorozbaliteľného archívu a.exe pričom sa použije predvolený konzolový SFX modul.
7z a -sfx7z.sfx a.exe *
pridá všetky súbory do samorozbaliteľného archívu a.exe pričom sa použije grafický SFX modul 7z.sfx.
a (Add – Pridať), d (Delete – Odstrániť), u (Update – Aktualizovať),