Seite 1 von 1

Zip-Packer - kann keine Daten zum Archiv hinzufügen

Verfasst: 27.05.2016 19:33
von Purethom
Hallo liebe PureBasicer,

ich versuche mich gerade an der Packer-Bibliothek und habe mit dem Code

Code: Alles auswählen

    memLengthI = StringByteLength(testStringS, #PB_Unicode)
    Debug memLengthI
    
    *packSource = AllocateMemory(memLengthI)
    Debug "Größe des allocierten Pack-Speichers: " + MemorySize(*packSource)
    
    ; speichert die Zeichenkette im angeforderten Speicher
    Debug PokeS(*packSource, testStringS)
    
    If CreatePack(0, "MyArchiv.zip")
        
        Debug AddPackMemory(0, *packSource, memLengthI, "cryptText")
        
        ClosePack(0)
    EndIf
    
    FreeMemory(*packSource)
eine Archiv-Datei erstellt und darin die komprimierte Text-Datei cryptText gespeichert. Hat prima geklappt.
Nun möchte zu diesem Archiv noch weitere Dateien hinzufügen und habe es auf diese Art probiert

Code: Alles auswählen

    memLengthI = StringByteLength(testString1S, #PB_Unicode)
    Debug memLengthI
    
    *packSource = AllocateMemory(memLengthI)
    Debug "Größe des allocierten Pack-Speichers: " + MemorySize(*packSource)
    
    ; speichert die Zeichenkette im angeforderten Speicher
    Debug PokeS(*packSource, testString1S)
    
    If OpenPack(0, "MyArchiv.zip")
        
        Debug AddPackMemory(0, *packSource, memLengthI, "cryptText1")
        
        ClosePack(0)
    EndIf
    
    FreeMemory(*packSource)
Hat leider nicht geklappt. AddPackMemory() gibt 0 zurück und die Datei wird auch nicht, wie in der Hilfe erwähnt, unkomprimiert gespeichert.

Was habe ich falsch gemacht oder nicht bedacht?

P.S. Wie krieg ich das mit der tollen Code-Ansicht hin? Bei mir will auch das nicht funktionieren :-(

Für hilfreiche Tips wäre ich sehr dankbar.

Viele Grüße aus Berlin sendet

Thomas

Edit by NicTheQuick: BBCode eingeschaltet

Re: Zip-Packer - kann keine Daten zum Archiv hinzufügen

Verfasst: 27.05.2016 20:42
von ts-soft
So steht es auch in der Hilfe, ist aber erst seit der Version PB 5.4x so.

AddPack... nur nach CreatePack, also nicht nach OpenPack.
Du kannst also nur das komplette Pack wieder (temporär) entpacken und neu einpacken :mrgreen:

Hoffentlich ändert sich das wieder.

Re: Zip-Packer - kann keine Daten zum Archiv hinzufügen

Verfasst: 28.05.2016 21:10
von Purethom
Hallo Thomas,

wer macht denn sowas? Das war vor 5.4x wirklich anders? Warum wurde es geändert? Fragen über Fragen.
Ich hab schon gelesen, dass AddPack... nach CreatePack funktioniert, konnte es aber nicht wirklich glauben.
Sonst ist PB doch eine so anwenderfreundliche Sprache. Na egal, hab mir was zusammengecodet und es
funktioniert.
Herzlichen Dank für deine schnelle Antwort.

Viele Grüße aus Berlin sendet

Thomas

Re: Zip-Packer - kann keine Daten zum Archiv hinzufügen

Verfasst: 29.05.2016 11:31
von Nino
Purethom hat geschrieben:Das war vor 5.4x wirklich anders?
Ja.
Purethom hat geschrieben:Warum wurde es geändert?
Der ZIP-Code stammt nicht von Fantaisie Software selbst, sondern es wurde bzw. wird eine externe Bibliothek benutzt. Weil es mit der zuvor verwendeten Bibliothek Probleme gab, wird seit PB 5.4x dafür eine andere Bibliothek eingesetzt. Und i. Ggs. zur alten Bibliothek verfügt die neue leider nicht über die gewünschtte Funktion.

Re: Zip-Packer - kann keine Daten zum Archiv hinzufügen

Verfasst: 29.05.2016 15:35
von GPI
In Gegenzug kann man jetzt .7z erstellen. Was man auch nicht verachten sollte. Eventuell kommen daher auch die Probleme, ranhängen bei 7z ist nicht so leicht.