PackMemory()
Syntaxe
Resultat = PackMemory(MemoireSource, MemoireDestination, LongueurSource [, NiveauCompression])Description
Compresse le contenu de la zone mémoire MemoireSource dans la zone mémoire MemoireDestination. La zone mémoire MemoireDestination doit avoir une longueur au moins égale à la longueur de MemoireSource + 8. Le paramètre 'NiveauCompression' est facultatif et peut prendre une valeur comprise entre 0 (compression plus rapide mais pas très efficace) et 9 (compression très lente mais très efficace). Le niveau de compression par défaut est 6. Si 'Resultat' est à 0, la compression a échoué (ou les données ne sont pas compressibles avec cet algorithme), sinon la taille de la zone compressée est renvoyée. Les données compressées peuvent être décompressées avec UnpackMemory(). Pour les programmeurs avancés, un callback peut être ajouté pour suivre la progression de la compression avec PackerCallback(). La zone mémoire peut être allouée avec la commande AllocateMemory().
Note :
L'algorithme de compression est actuellement assez lent mais donne de très bons résultats en taille (meilleur que ceux obtenus avec le format .zip) et par dessus tout rend une décompression 'éclair' (bien plus rapide que .zip).
OS Supportés
Tous