AddPackMemory()

Syntax

Ergebnis = AddPackMemory(Speicheradresse, Länge [, KompressionsLevel])
Beschreibung
Komprimiert den angegebenen Speicherbereich und fügt diesen zur aktuellen Pack-Datei, die zuvor mit CreatePack() geöffnet wurde, hinzu. Das Hinzufügen eines großen Speicherbereichs mit maximaler Kompression kann eine längere Zeit dauern, aber die Entpackgeschwindigkeit ist dafür sehr hoch (nahezu sofort) und die Packrate ist sehr gut. 'KompressionsLevel' ist ein optionaler Parameter, welcher von 0 (schnellste Komprimierung, wenig effizient) bis 9 (langsamste Komprimierung, sehr effizient) reicht.

Beispiel:

  Dim Tableau(10) ; Tabelle mit 11 Elementen
  
  ; Füllen der Tabelle
  For i=0 To 10
    Tableau(i) = i
  Next
  
  If CreatePack("test.pak")
    ; Hinzufügen und Komprimieren der Daten der Tabelle
    AddPackMemory(@Tableau(), SizeOf(Long)*11, 9)
    ClosePack()
  EndIf
  
  ; Setzen der Tabelleninhalte auf Null
  For i=0 To 10
    Tableau(i) = 0
  Next
  
  ; Öffnen der gepackten Datei
  If OpenPack("test.pak")
    *Pointeur=NextPackFile() ; Liest und entpackt den Speicherbereich
    Taille=PackFileSize()    ; Ermittelt die Größe des Speicherbereichs
    ; Kopiert den entpackten Speicherbereich in die Tabelle
    CopyMemory(*Pointeur, @Tableau(), Taille)
    ClosePack()
  EndIf
  
  ; Lesen der Tabelle
  For i=0 To 10
    Debug Tableau(i) 
  Next

Unterstützte OS

Alle

<- AddPackFile() - Packer Inhaltsverzeichnis - ClosePack() ->