AddPackFile()
Syntax
Ergebnis = AddPackFile(#Pack, DateiName$, GepackterDateiName$)Beschreibung
Komprimiert die angegebene Datei und fügt diese zur aktuellen Paket-Datei, die zuvor mit CreatePack() erstellt wurde, hinzu. Das Hinzufügen einer großen Datei kann eine längere Zeit dauern.
Parameter
#Pack Das zu verwendende Paket. DateiName$ Die Datei, welche zum Paket hinzugefügt werden soll. GepackterDateiName$ Der im Archiv zu verwendende Dateiname, um die Datei zu speichern.
Rückgabewert
Gibt einen Wert ungleich Null zurück, wenn die Datei erfolgreich zur Paket-Datei hinzugefügt wurde. Wenn die Datei nicht komprimiert werden kann, dann wird sie "so wie sie ist" in der Paket-Datei gespeichert.
Beispiel: Verwendung einer Baum-Dateistruktur
UseZipPacker()
Path$ = #PB_Compiler_Home + "examples/sources/" ; Pfad zu den PureBasic Examples Daten/Media-Dateien
PackFile$ = GetTemporaryDirectory() + "PureBasicTest.zip" ; Pfad zur Paket-Datei, welche erstellt und später geöffnet werden soll
If CreatePack(0, PackFile$)
AddPackFile(0, Path$ + "Data/world.png", "Data/world.png")
AddPackFile(0, Path$ + "Data/test.pref", "Data/test.pref")
AddPackFile(0, Path$ + "Data/CdPlayer.ico", "Data/CdPlayer.ico")
AddPackFile(0, Path$ + "2DDrawing.pb", "2DDrawing.pb")
ClosePack(0)
Debug "Paket-Datei erfolgreich erstellt: " + PackFile$
Else
Debug "Fehler beim Erstellen der Paket-Datei!"
EndIf
Path$ = GetTemporaryDirectory() + "PureBasicTestTree/" ; Pfad zu einem Verzeichnis, in welches die Paket-Dateien entpackt werden sollen
If OpenPack(0, PackFile$)
If (CreateDirectory(Path$) And CreateDirectory(Path$ + "Data/")) Or FileSize(Path$ + "Data/") = -2
If ExaminePack(0)
Debug "Entpacken des Archivs nach: " + Path$
While NextPackEntry(0)
Debug " - Name: " + PackEntryName(0) + ", Größe: " + PackEntrySize(0)
If UncompressPackFile(0, Path$ + PackEntryName(0), PackEntryName(0)) = -1
Debug "Fehler beim Entpacken der Datei: " + PackEntryName(0)
EndIf
Wend
Else
Debug "Fehler beim Untersuchen der Paket-Datei!"
EndIf
ClosePack(0)
RunProgram(Path$) ; Öffnet das Verzeichnis mit den entpackten Dateien
Else
Debug "Fehler beim Erstellen des Ordners zum Entpacken des Archiv-Inhalts!"
EndIf
Else
Debug "Fehler beim Öffnen der Paket-Datei!"
EndIf
Für ein weiteres Beispiel siehe UncompressPackFile().
Siehe auch
CreatePack()
Unterstützte OS
Alle