[R] Utilisation de 7zip.au3
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
- peuchere83
- Niveau 5

- Messages : 169
- Enregistré le : mer. 17 déc. 2008 10:50
- Status : Hors ligne
[R] Utilisation de 7zip.au3
Bonjour à tous,
Je suis entrain de reprendre mes anciens scripts de compression, en utilisant 7zip.au3.
Mais j'ai un fonctionnement bizarre et je voudrais donc votre avis dessus :
Lorsque j'utilise la commande _7ZIPExtract et que je lui passe en paramètre un répertoire, il me décompresse tous les fichiers zip qui y sont contenus et ce la de manière récursive !!!!
J'ai l'impression que le programme a été conçu pour fonctionner de cette manière : est ce le cas ?
Pour palier à ce "problème" je suis donc obliger de bidouiller avec un filelisttoarray et une boucle for afin de bloquer la récursivité.
Une autre solution ?
Cordialement
Je suis entrain de reprendre mes anciens scripts de compression, en utilisant 7zip.au3.
Mais j'ai un fonctionnement bizarre et je voudrais donc votre avis dessus :
Lorsque j'utilise la commande _7ZIPExtract et que je lui passe en paramètre un répertoire, il me décompresse tous les fichiers zip qui y sont contenus et ce la de manière récursive !!!!
J'ai l'impression que le programme a été conçu pour fonctionner de cette manière : est ce le cas ?
Pour palier à ce "problème" je suis donc obliger de bidouiller avec un filelisttoarray et une boucle for afin de bloquer la récursivité.
Une autre solution ?
Cordialement
Modifié en dernier par peuchere83 le mar. 13 avr. 2010 09:11, modifié 1 fois.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Skippy est là pour t'enlever tous tes soucis.
- Tlem
- Site Admin

- Messages : 11824
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Quelle est la raison de passer en paramètre un répertoire alors que c'est un fichier qui est attendu ???
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- jbnh
- Niveau 11

- Messages : 1932
- Enregistré le : ven. 02 mai 2008 14:54
- Localisation : Bruxelles
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !
Merci
Merci
- peuchere83
- Niveau 5

- Messages : 169
- Enregistré le : mer. 17 déc. 2008 10:50
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Bonjour,
Ce que je cherche à faire est tout simple (je pense mais je n'y arrive pas pour l'instant
) :
Décompresser tous fichiers zip se trouvant dans un répertoire soit au même endroit, soit dans un répertoire temporaire mais en respectant l'arborescence.
Cordialement
Ce que je cherche à faire est tout simple (je pense mais je n'y arrive pas pour l'instant
Décompresser tous fichiers zip se trouvant dans un répertoire soit au même endroit, soit dans un répertoire temporaire mais en respectant l'arborescence.
Cordialement
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Skippy est là pour t'enlever tous tes soucis.
- Tlem
- Site Admin

- Messages : 11824
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Haaaaa, je comprend mieux maintenant ...
En fait, vous utilisez la mauvaise fonction.
_7ZIPExtract() ne prend pas en compte l'arborescence, mais _7ZIPExtractEx() oui.
Bon code.
En fait, vous utilisez la mauvaise fonction.
_7ZIPExtract() ne prend pas en compte l'arborescence, mais _7ZIPExtractEx() oui.
Bon code.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- peuchere83
- Niveau 5

- Messages : 169
- Enregistré le : mer. 17 déc. 2008 10:50
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Merci Tlem,
mais malheureusement je ne trouve pas la solution. J'avais déjà essayé cette fonction et quoi que je choisisse comme option, l'arborescence n'est pas recréé.
Franchement là, je suis largué.
mais malheureusement je ne trouve pas la solution. J'avais déjà essayé cette fonction et quoi que je choisisse comme option, l'arborescence n'est pas recréé.
Franchement là, je suis largué.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Skippy est là pour t'enlever tous tes soucis.
- Tlem
- Site Admin

- Messages : 11824
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
J'utilise cette fonction pour le Pack AutoIt-FR, donc c'est sur et certain cela fonctionne.
Jetez un oeil sur le code pour voir comment je l'utilise.
Jetez un oeil sur le code pour voir comment je l'utilise.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- peuchere83
- Niveau 5

- Messages : 169
- Enregistré le : mer. 17 déc. 2008 10:50
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Désolé Tlem d'être si lourd, (idem pour jbnh)
mais je viens de résoudre mon problème en une 20 aine de lignes de code !!!
Je pense qu'il est possible de faire mieux. C'est pour cela que j'insiste
Là ou je sèche, c'est sur la création de l'arborescence :
J'ai un répertoire parent qui contient x répertoires qui contiennent chacun x fichiers zip.
Je souhaite recréer l'arborescence dans un fichier temporaire qui contiendra tous les fichiers zip (en respectant l'arborescence du parent).
J'ai regardé et adapté ton code du pack autoit mais pas mieux.
Cordialement.
mais je viens de résoudre mon problème en une 20 aine de lignes de code !!!
Je pense qu'il est possible de faire mieux. C'est pour cela que j'insiste
Là ou je sèche, c'est sur la création de l'arborescence :
J'ai un répertoire parent qui contient x répertoires qui contiennent chacun x fichiers zip.
Je souhaite recréer l'arborescence dans un fichier temporaire qui contiendra tous les fichiers zip (en respectant l'arborescence du parent).
J'ai regardé et adapté ton code du pack autoit mais pas mieux.
Cordialement.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Skippy est là pour t'enlever tous tes soucis.
- Tlem
- Site Admin

- Messages : 11824
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Je confirme, car un coup vous parlez de décompression et un autre coup de compression ...peuchere83 a écrit :Désolé Tlem d'être si lourd
Il serait souhaitable que vous détaillez très exactement ce que vous cherchez à faire.
Pour compresser des fichiers et des répertoires, c'est la fonction _7ZipAdd() avec le paramètre de récursivité si vous souhaitez les sous répertoires.
Pour extraire les fichiers et répertoires contenu dans une archive Zip ou 7z vous devez utiliser la fonction _7ZIPExtractEx() avec le paramètre de récursivité, si vous souhaitez extraire avec l'arborescence.
Je vous conseil vivement de regarder le fichier 7zip.au3 pour voir les paramètres des fonctions que vous pouvez utiliser, ainsi que les exemples fournit dans le fichier joint à ce message : http://www.autoitscript.fr/forum/viewto ... 558#p11558
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- peuchere83
- Niveau 5

- Messages : 169
- Enregistré le : mer. 17 déc. 2008 10:50
- Status : Hors ligne
Re: [..] Utilisation de 7zip.au3
Pardon !!!!!!!!!!
Je parle uniquement de décompression.
J'ai du mal m'exprimer depuis le début car ce que je cherche à faire c'est de la décompression récursive :
de décompresser tous les fichiers zip d'une arborescence en recréant cette structure de répertoire.
J'ai pensé à tort que _7ZIPExtractEx() permettait cela, or pas du tout. Il créé l'arborescence contenue dans le fichier zip. Pour le reste (création de la structure de répertoire) il faut donc le coder.
En résumé, je me suis perdu tout seul comme un grand.
Vraiment désolé pour la perte de temps.
Je parle uniquement de décompression.
J'ai du mal m'exprimer depuis le début car ce que je cherche à faire c'est de la décompression récursive :
de décompresser tous les fichiers zip d'une arborescence en recréant cette structure de répertoire.
J'ai pensé à tort que _7ZIPExtractEx() permettait cela, or pas du tout. Il créé l'arborescence contenue dans le fichier zip. Pour le reste (création de la structure de répertoire) il faut donc le coder.
En résumé, je me suis perdu tout seul comme un grand.
Vraiment désolé pour la perte de temps.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Skippy est là pour t'enlever tous tes soucis.
- Tlem
- Site Admin

- Messages : 11824
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [R] Utilisation de 7zip.au3
Alors là, franchement, c'est de pire en pire ...
Je reprend votre premier message :
Franchement, si vous donniez un exemple d'archive et le résultat que vous recherchez, cela éviterait cette communication stérile et cette perte de temps totalement inutile ...
Je reprend votre premier message :
et dans votre dernier message :Lorsque j'utilise la commande _7ZIPExtract et que je lui passe en paramètre un répertoire, il me décompresse tous les fichiers zip qui y sont contenus et ce la de manière récursive !!!!
J'ai l'impression que le programme a été conçu pour fonctionner de cette manière : est ce le cas ?
Pour palier à ce "problème" je suis donc obliger de bidouiller avec un filelisttoarray et une boucle for afin de bloquer la récursivité.
Alors si je lit bien, dans le premier vous ne voulez pas et dans le dernier message, vous voulez !!!J'ai du mal m'exprimer depuis le début car ce que je cherche à faire c'est de la décompression récursive :
de décompresser tous les fichiers zip d'une arborescence en recréant cette structure de répertoire.
Franchement, si vous donniez un exemple d'archive et le résultat que vous recherchez, cela éviterait cette communication stérile et cette perte de temps totalement inutile ...
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
- peuchere83
- Niveau 5

- Messages : 169
- Enregistré le : mer. 17 déc. 2008 10:50
- Status : Hors ligne
Re: [R] Utilisation de 7zip.au3
En effet Tlem vous avez raison, je n'ai pas été clair (surtout dans mon 1er post).
lors de l'utilisation de _7ZIPExtract quand je lui passe en paramètre un répertoire, il me décompresse tous les fichiers contenus même dans les sous répertoires mais sans me recréer l'arborescence (je ne parle pas de l'arborescence contenu dans les fichiers zip mais celle contenant les fichiers zip).
J'ai testé _7ZIPExtractEx et j'obtiens le même résultat.
J'ai donc du créer une fonction pour palier à ce manque.
J'espère avoir été plus clair car je suis vraiment navré de vous avoir fait perdre votre temps.
Je mettrais dorénavant du code pour faciliter la compréhension.
Cordialement.
Je que je voulais dire dans mon 1er message, c'est :Lorsque j'utilise la commande _7ZIPExtract et que je lui passe en paramètre un répertoire, il me décompresse tous les fichiers zip qui y sont contenus et ce la de manière récursive !!!!
J'ai l'impression que le programme a été conçu pour fonctionner de cette manière : est ce le cas ?
Pour palier à ce "problème" je suis donc obliger de bidouiller avec un filelisttoarray et une boucle for afin de bloquer la récursivité.
lors de l'utilisation de _7ZIPExtract quand je lui passe en paramètre un répertoire, il me décompresse tous les fichiers contenus même dans les sous répertoires mais sans me recréer l'arborescence (je ne parle pas de l'arborescence contenu dans les fichiers zip mais celle contenant les fichiers zip).
J'ai testé _7ZIPExtractEx et j'obtiens le même résultat.
J'ai donc du créer une fonction pour palier à ce manque.
J'espère avoir été plus clair car je suis vraiment navré de vous avoir fait perdre votre temps.
Je mettrais dorénavant du code pour faciliter la compréhension.
Cordialement.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Skippy est là pour t'enlever tous tes soucis.
- Tlem
- Site Admin

- Messages : 11824
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [R] Utilisation de 7zip.au3
Vous n'expliquez toujours pas ce que vous cherchez à faire.
En relisant plusieurs fois les messages, j'en déduit que vous cherchez à extraire des fichiers zip contenus dans une arborescence et que les fichiers extraits reste dans le dossier d'origine du fichier zip.
Si c'est bien ce que vous cherchez à faire, la logique voudrait que vous utilisiez une fonction de 'scan' de votre arborescence, à la recherche des fichiers zip contenu (ceci devrait faire l'affaire : http://www.autoitscript.fr/forum/viewto ... f=21&t=479 ).
Ensuite une simple boucle de lecture du tableau résultant et l'utilisation conjointe de la fonction _7ZIPExtract() ou _7ZIPExtractEx() (selon si vous avez besoin de l'arborescence contenue dans le fichier zip) suffiront pour extraire chaque fichier zip dans le dossier d'origine de ce dernier.
Bon, bien sur il faudra jongler avec l'utilisation des dossiers, mais cela ne devrait pas représenter une trop grande difficulté.
En relisant plusieurs fois les messages, j'en déduit que vous cherchez à extraire des fichiers zip contenus dans une arborescence et que les fichiers extraits reste dans le dossier d'origine du fichier zip.
Si c'est bien ce que vous cherchez à faire, la logique voudrait que vous utilisiez une fonction de 'scan' de votre arborescence, à la recherche des fichiers zip contenu (ceci devrait faire l'affaire : http://www.autoitscript.fr/forum/viewto ... f=21&t=479 ).
Ensuite une simple boucle de lecture du tableau résultant et l'utilisation conjointe de la fonction _7ZIPExtract() ou _7ZIPExtractEx() (selon si vous avez besoin de l'arborescence contenue dans le fichier zip) suffiront pour extraire chaque fichier zip dans le dossier d'origine de ce dernier.
Bon, bien sur il faudra jongler avec l'utilisation des dossiers, mais cela ne devrait pas représenter une trop grande difficulté.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
