[RESOLU] progression de AddPackFile

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: progression de AddPackFile

Message par falsam »

D'aprés un test que je viens de faire, il n'est pas possible de compresser un fichier de plus de 2 Go. Ou alors c'est l'archive qui ne peut pas être supérieur à 2 Go.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: progression de AddPackFile

Message par Backup »

D'aprés un test que je viens de faire, il n'est pas possible de compresser un fichier de plus de 2 Go. Ou alors c'est l'archive qui ne peut pas être supérieur à 2 Go.
hum .... :mrgreen:


pas besoin de faire tout un tas de test , il suffit de savoir lire ....

Extrait de la DOC

Syntaxe

UseZipPacker()
Description

Active le compresseur, le décompresseur et le support des archives Zip.
Arguments

Aucuns.
Valeur de retour

Aucune.
Remarques

L'archive créé sera compatible avec d'autres archives Zip au format 2.0.
La taille de l'archive créée peut aller jusqu'à 2GB.

la formulation n'est peut etre pas tres bien choisie , mais elle reste claire ;)


ps : si ça marche chez G-Rom , et chez moi , ça devrai marcher chez tout le monde
vérifiez vos droits (perso je suis toujours en Admin )
et n'oubliez pas que sur 8 on ne peut pas ecrire sur C:\ .... (qu'elle idée )
perso j'ai une Partition "E:\" ou se trouve mes Purebasic


@G-rom : ben oui , une version d'essai ... :lol: (de toute façons .. pour ce que je m'en sert :roll: )


Ps:2 a la fin de la compression il peut y avoir un petit temp d'attente ... je suppose que c'est lié a l'ecriture du fichier Zip

Ps 3 : bien sur l'ajout des fichiers se fait avec les repertoires Parents (ça respecte se qui se trouve dans la liste() )

si on ne veux qu'ajouter les fichiers Sans les repertoires Parents , il suffit de faire

Code : Tout sélectionner

 AddPackFile(#Arch, Liste.s(),GetFilePart(Liste.s())) ; ajout seulement des fichiers pointés (sans les dossiers parents )
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: progression de AddPackFile

Message par Backup »

par contre .....

impossible chez moi d'utiliser

Code : Tout sélectionner

If OpenPack(#Arch2, "E:\Dobro\PureBasic\dobro\ExemplePerso\compression\monarchive.zip" ,#PB_PackerPlugin_Zip    ) <>0
il n'ouvre pas l'archive que j'ai pourtant créé avec Purebasic !

là, le chemin est en chaine$ , mais meme en variable , ça ne marche pas ! 8O
Avatar de l’utilisateur
TazNormand
Messages : 1297
Inscription : ven. 27/oct./2006 12:19
Localisation : Calvados (14)

Re: progression de AddPackFile

Message par TazNormand »

Bon, petit (re)test rapide suite aux remarques de Falsam :

une fois mis le source dans le dossier des images à compresser (j'utilise l'extension FireFox de RX14 qui stocke dans le dossier "temp" de FF), la compression marche, mais la jauge non, elle file tout de suite ) 100% pour 4 fichiers allant de 270Mo à 1110Mo pour un total de 644Mo. Je vois dans le dossier l'archive qui se crée (sa taille change quand on fait F5, jusqu'au message "tout a été compressé"

Elle ne s'ouvre pas avec l'explorateur Windows (W7) je pense que cela vient du fait que l'arborescence interne contient le "lecteur X:", pas de soucis sour WinRar et 7-Zip.

Par contre, niveau taux de compression... :?

Même fichiers sous :
  • WinRar en .RAR : 446Mo
    WinRar en .zip : 502Mo
    7-Zip en .7z : 397Mo
    "PureCompress" : 500Mo
Image
Image
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: progression de AddPackFile

Message par Backup »

TazNormand a écrit : Elle ne s'ouvre pas avec l'explorateur Windows (W7) je pense que cela vient du fait que l'arborescence interne contient le "lecteur X:", pas de soucis sour WinRar et 7-Zip.
mon code a été changé depuis (page 1)
il faut compiler en ThreadSafe
j'ai changé la ligne qui sauvegardait dans le zip , l'arborescence
pour ne conserver QUE les fichiers ...

mon Progress bar indique la progression des fichiers compressés
mais pas la progression de la compression pour chaque fichier
ce qui fait que si tu compresses un gros fichier , la bar va faire un bond de la taille de ce fichier ...

Fred aurai du ajouter un call back pour la progression

a l'epoque (pour les anciens du forum ) j'avais fait un Prg de Back UP qui compressait en ZIP en utilisant une Librairie
"PureZip" de Gnozal ??
la fonction "PureZIP_CallbackP(File.s, PerCent.f)" permettait de pouvoir avoir la progression PENDANT la compression ...

je donne juste une solution de secours ....


toutefois une possibilité est peut être ouverte , vu qu'on peut (j'ai essayé )
explorer l'archive PENDANT la compression
donc théoriquement, on devrai pouvoir surveiller la taille d'un fichier qui change dans l'archive
mais j'ai pas envie de me lancer la dedans ....

d'autant que j'ai voulu ajouter la Decompression , et que je n'y arrive pas a cause de
la fonction "If OpenPack(#Arch2, "E:\Dobro\PureBasic\dobro\ExemplePerso\compression\monarchive.zip" ) <>0"
qui semble refuser d'ouvrir mon archive ....
Dernière modification par Backup le lun. 23/juin/2014 15:40, modifié 1 fois.
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: progression de AddPackFile

Message par falsam »

TazNormand a écrit :Bon, petit (re)test rapide suite aux remarques de Falsam :

une fois mis le source dans le dossier des images à compresser (j'utilise l'extension FireFox de RX14 qui stocke dans le dossier "temp" de FF), la compression marche, mais la jauge non, elle file tout de suite ) 100% pour 4 fichiers allant de 270Mo à 1110Mo pour un total de 644Mo. Je vois dans le dossier l'archive qui se crée (sa taille change quand on fait F5, jusqu'au message "tout a été compressé"

Elle ne s'ouvre pas avec l'explorateur Windows (W7) je pense que cela vient du fait que l'arborescence interne contient le "lecteur X:", pas de soucis sour WinRar et 7-Zip.

Par contre, niveau taux de compression... :?

Même fichiers sous :
  • WinRar en .RAR : 446Mo
    WinRar en .zip : 502Mo
    7-Zip en .7z : 397Mo
    "PureCompress" : 500Mo
Au moins ça me rassure ...... ça ne fonctionne pas on est bien d'accord. Et quand je regarde le résultat de l'arborescence avec WinRar, les bras m'en tombent !
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: progression de AddPackFile

Message par Backup »

falsam a écrit : [Au moins ça me rassure ...... ça ne fonctionne pas on est bien d'accord. Et quand je regarde le résultat de l'arborescence avec WinRar, les bras m'en tombent !
Dobro a écrit : Ce Matin .... j'ai changé la ligne qui sauvegardait dans le zip , l'arborescence
pour ne conserver QUE les fichiers
...
.. :roll: quel ... Sphere de metal qu'on met dans les canons
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: progression de AddPackFile

Message par falsam »

Dobro a écrit :j'ai changé la ligne qui sauvegardait dans le zip , pour ne conserver QUE les fichiers
J'avais bien lu. Mais l’intérêt était aussi de garder l'arborescence. Mais je suis d'accord, ça fonctionne de cette maniére et c'est d'ailleurs ce que j'ai fait dans un exemple que je cite dans ce même thread ... certe sans la barre de progression qui ne sert pas à grand chose à part de faire de l'esbrouffe :mrgreen:
Dobro a écrit :je fais un coup d'esbrouffe avec le Progress bar
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: progression de AddPackFile

Message par falsam »

Pour que ton code fonctionne Dobro il faut retirer l'unité de stockage se trouvant dans chacun des noms de fichiers.

Un bout de code sans le tintouin qui l'entoure

Code : Tout sélectionner

Enumeration
  #ZipFile
EndEnumeration

UseZipPacker()

File$ = OpenFileRequester("Sélectionner les fichiers à compresser","","",0, #PB_Requester_MultiSelection)

If file$ <> ""
  CreatePack(#ZipFile, "myzip.zip", #PB_PackerPlugin_Zip)
EndIf

While File$
  Debug Mid(File$, 4)
  AddPackFile(#ZipFile, File$, Mid(File$, 4))
  File$ = NextSelectedFileName()
Wend

ClosePack(#ZipFile)
Le fichier compressé dans ce cas est propre.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
supercdfr
Messages : 105
Inscription : sam. 21/juil./2007 15:16

Re: progression de AddPackFile

Message par supercdfr »

j'ai cherché un peu partout sans trouver de reponse.

Il existe bien minizip, mais il ne compresse pas les fichiers de + de 2 Go (mais le callback fonctionnait)

Je me demande : n'est-il pas possible d'utiliser le zlib ?
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: progression de AddPackFile

Message par Backup »

falsam a écrit : Mid(File$, 4))
oui, effectivement ça marche avec ça ...
ptete pas si con au final ....(quand tu veux) :mrgreen:



@supercdfr

essaye PureZip de Gnozal
http://gnozal.ucoz.com/
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: progression de AddPackFile

Message par G-Rom »

Sinon , j'utilise PhysFS pour la compression / décompression : http://icculus.org/physfs/ , Faut pas avoir peur du site 0.1a... :D
C'est du C , donc adaptable facilement à PB je pense.
Avatar de l’utilisateur
Micoute
Messages : 2583
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: progression de AddPackFile

Message par Micoute »

Bonjour à tous,

j'utilise pour ma part, un logiciel de ts-soft, PurePacker, que j'ai francisé, car je ne pratique pas couramment l'anglais !
http://www.purebasic.fr/english/viewtop ... PurePacker
j'espère avoir apporté de l'eau à votre moulin !
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: progression de AddPackFile

Message par Backup »

supercdfr
Messages : 105
Inscription : sam. 21/juil./2007 15:16

Re: progression de AddPackFile

Message par supercdfr »

purezip ne fonctionne plus sous purebasic 5.2x
Et purepacker ne fait qu'utiliser le packer de purebasic, donc, pas de progression.
Répondre