Seite 1 von 1

Datei Container mit Packer & Crypter

Verfasst: 10.02.2009 15:49
von cxAlex
Ich habe basierend auf meinem MemoryStreaming Include einen Datei Container geschrieben, da ich mit den PB internen Container Funktionen nicht zufrieden war.
Features:
  • x86/x64/Ascii/Unicode kompatibel
  • Aufteilung Builder/Loader
  • (Un)Packer über Prototypes frei wählbar, Standart Packer vorprogrammiert [JCalG1/Zip]
  • Crypter über Prototypes frei wählbar, Standart Crypter vorprogrammiert [RC4]
  • Mögliche Kennzeichnung der Files per ID
  • Es werden Name/Größe/Attribute der Datei gespeichert
  • Iteration aller Dateien und ihrer Infos möglich
  • Dateien können per ID angesteuert werden
  • Dateien werden nur bei Bedarft automatisch entpackt, der entpackte Speicher wird gecached um weitere Zugriffe zu beschleuigen
  • Dateien können direkt als Stream exportiert werden
  • Dateien können wahlweise direkt als Datei gespeichert oder in den Speicher geladen werden
  • Sehr schnell beim Laden, geignet für GameData usw
Download Source:
http://paladiumproject.q-soft.ch/public ... tainer.zip

Democode als EXE:
http://paladiumproject.q-soft.ch/public ... r_demo.exe

Verfasst: 10.02.2009 20:45
von cxAlex
Update:
  • Frei wählbare Verschlüsselung hinzugefügt (Standart: RC4)
  • Datei kann direkt aus dem Container in einen Stream konvertiert werden
  • Bug beim (Un)Packen der Daten behoben

Verfasst: 11.02.2009 22:02
von Kiffi
Danke! :allright:

Kleine Anmerkung noch:
cxAlex hat geschrieben:

Code: Alles auswählen

[...]
      temp = S(i)
      S(i) = S(j)
      S(j) = temp
[...]
... könnte man ersetzen durch:

Code: Alles auswählen

Swap S(i), S(j)
weiß allerdings nicht, ob es performanter ist, aber man spart sich zumindest die Temp-Variable.

Grüße ... Kiffi

Verfasst: 11.02.2009 22:30
von cxAlex
Danke für die Anregung, wird in der nächsten Version eingebaut.

Verfasst: 11.02.2009 22:40
von AND51
Kiffi hat geschrieben:
cxAlex hat geschrieben:

Code: Alles auswählen

[...]
      temp = S(i)
      S(i) = S(j)
      S(j) = temp
[...]
... könnte man ersetzen durch:

Code: Alles auswählen

Swap S(i), S(j)
Grüße ... Kiffi
Na Kiffi? Kopiert vom Thread vom 23. Dez. 2007? :wink:
Du wiederholst dich... :lol:

Verfasst: 15.02.2009 14:45
von cxAlex
Update:
  • Speicherblöcke können direkt zum Container hinzugefügt werden
  • Packer wählbar: Zip/JCalG1
  • Dateien können direkt als Stream exportiert werden
  • Crypter verbessert
  • Kleine Bugfixes
Code im 1. Post

Builder wird auch bald aktualisiert
http://www.purebasic.fr/german/viewtopic.php?t=19107

Verfasst: 16.02.2009 10:47
von cxAlex
Update:
  • CRC Check eingebaut
  • Einige Befehlsnamen geändert
  • Bug beim Zip - Unpacker behoben
  • Wegen der Größe des Includes nun als Download verfügbar
siehe 1. Post

Verfasst: 30.03.2009 17:27
von cxAlex