; Charger un fichier décompressé en mémoire
r=OpenPack("E:\tempPacker.txt") ; tempPacker.txt fichier préalablement compressé
If r
*adrPack=NextPackFile()
l=PackFileSize()
EndIf
ClosePack()
; recompresser la zone mémoire
If l
Debug "lenSrc : " + Str(l)
*memOut=AllocateMemory(l+8)
lenOut=PackMemory(*adrPack, *memOut,l,9)
Debug lenOut
EndIf
qui me retourne invariablement une erreur «Invalid memory access (read error at xxx)»
et l'erreur de lecture se situe toujours à *adrPack+1968 quelquesoit le contenu du fichier compressé ?
il me semble que certain type de contenu ne peux être compressé, mais ce ne devrais pas planter le programme
(par exemple j'ai essaye d'utiliser ca sur des images jpeg, png, et ca ne fonctionne pas)
Il n'est peut être pas possible de recompresser de la mémoire déjà compresser ?
_________________________________________________
Mon site : CeriseCode (Attention Chantier perpétuel )
En fait si closepack() est déplacé en fin de procédure, ça passe
or PackMemory/unpackmemory n'est pas forcement lié à une lecture/écriture de fichier !
Trouvé.
ClosePack libère la mémoire à *adrPack.
Il faut donc effectuer une copie de la mémoire avant le ClosePack
et utiliser cette copie pour le PackMemory