Erstellen Sie ein selbstextrahierendes (SFX) Archiv
Aspose.ZIP ermöglicht die Erstellung eines selbstextrahierenden (SFX) Archivs. Hierbei handelt es sich um eine spezielle Art von ZIP-Datei mit der Dateinamenerweiterung .exe. Sie können eine selbstextrahierende Datei entpacken, indem Sie darauf doppelklicken.
Erstellung eines selbstextrahierenden Archivs
Um ein selbstextrahierendes Archiv zu erstellen, instanziieren Sie SelfExtractorOptions und übergeben es beim Speichern an ArchiveSaveOptions.
1 using (FileStream zipFile = File.Open("archive.exe", FileMode.Create))
2 {
3 using (var archive = new Archive())
4 {
5 archive.CreateEntry("entry.bin", "data.bin");
6 var sfxOptions = new SelfExtractorOptions()
7 {
8 ExtractorTitle = "Extractor",
9 CloseWindowOnExtraction = true,
10 TitleIcon = "C:\pictorgam.ico"
11 };
12 archive.Save(zipFile, new ArchiveSaveOptions() { SelfExtractorOptions = sfxOptions });
13 }
14 }
Selbstextrahierendes Archiv wird ausgeführt
Das von Ihnen erstellte Archiv ist ausführbar und erfordert zur Ausführung .NET Framework 2.0 oder höher. Solche Frameworks werden mit Windows Vista und höher geliefert. Sie können es als reguläres Programm per Doppelklick oder über die Befehlszeilenschnittstelle ausführen. Wenn Sie die Extraktion automatisch starten möchten, geben Sie die Befehlszeilenoption „-autoExtract“ an. Probe:
1 C:\>archive.exe -autoExtract -password:T0p$ecret
Befehlszeilenoptionen für selbstextrahierende Archive
Option | Meaning | Sample |
---|---|---|
-autoExtract | Primary option - without it decompression does not start. Extraction starts automatically, other options apply. | sfx.exe -autoExtract |
-autoClose | Window closes when the extraction is complete. This option only makes sense if -autoExtract option is present. | sfx.exe -autoExtract -autoClose |
-forceOverwrite | Overwrites all existing files without prompt if there are any. This option only makes sense if -autoExtract option present. | sfx.exe -autoExtract -forceOverwrite |
-password: | Provides a password to encrypted entries. This option only makes sense if -autoExtract option is present. If you have spaces within the password quote it. | sfx.exe -autoExtract -password:T0p$ecret |
-destination: | Extracts files to the supplied directory. This option only makes sense if -autoExtract option is present. If you have spaces within the path quote it. | sfx.exe -autoExtract -destination:"C:\My Documents" |
Sie können diese Optionen zum Erstellen von Batch-Skripten unter Windows verwenden.