Zlib uncompress
-
Hallo zusammen,wie schon in einem anderen thread erwähnt ,würde ich gerne einen Game Updater machen ,der neuere Versionen eines spieles von meinem Server lädt und installiert ,bzw. entpackt.
Da das entpacken mit libcurl nicht wirklich geklappt hat widme ich mich jetzt der zlib bibliothek.Eine Frage wäre von meiner Seite ,ob ich ein Archiv in ein Ordner entpacken kann ,bzw. einfach alle Dateien aus einem Archiv entpacken kann.Da ich in dem Beispielcode von zlib.net gesehen habe,dass die function jewals ein FILE pointer zu dem Archiv und einen anderen für die entpackte datei brauchen,sieht es so aus ,als ob man nur 1 Datei aus einem archiv entpacken kann.
Ich bitte um Hilfe,schön wäre wenn mir jemand eine art entpack funktionen posten könnte,da ich in zlib noch sehr neu bin und es mich wohl einige zeit kosten würde eine eigene zu machen.
Danke
-
zlib kümmert sich rein um die Kompression/Dekompression von Daten. Afaik hat zlib absolut keinen Schimmer vom .zip Format...
-
Welche bibliothek könnt ihr mir empfehlen für sowas,am besten eine simple :D,da ich eigendlich nicht wirklich viel zeit mit dem Updater verbringen will,sondern mit dem Spiel selbst.
Sollte einfach nur zip oder irgendwas anderes entpacken
Danke
-
PhysicsFS behandelt viele bekannte Archivformate und hat eine sehr schöne API.
Ausserdem könntest du für den Netzwerk-Teil SFML verwenden, ebenfalls sehr sauberes Design.
-
Hätte evtl jemand eine kleine Demo zum entpacken bei PhysicsFS ?
Wäre echt nett.
Danke
-
Ich hab noch die Chilkat library gesehen,sehr sehr simpel:
#include "stdafx.h" #include "CkZip.h" #include "CkZipEntry.h" int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { // Unlock the Zip product. // This only needs to be done once when the first CkZip object // is instantiated. CkZip zip; zip.UnlockComponent("unlockCode"); // Open a Zip file and Unzip it. All subdirectories // are automatically created. zip.OpenZip("tree.zip"); zip.Extract(".",0); zip.CloseZip(); return 0; }Leider bekomme ich viele Fehler vom compiler wenn ich die include dateien einbinde,z.B nicht deklarierter Bezeichner SYSTEMTIME....
-
Du musst auch die Lib mitlinken, es reicht nicht nur die .h Datei zu inkludieren.
-
Hab ich auch gemacht,nur bekomme ich dann 53 Linkedr error ,dass in der bibliothek irgendwelche verweise fehler und sowas...
-
Ok funzt jetzt ,Chilkat ist eine echt gute API,hab ich jetzt zum entpacken und für FTP benutzt,60 MB archiv entpackt sie in < 2 sec!!!