IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API, COM et SDKs Delphi Discussion :

Zipper plusieurs fichiers avec Abbrevia TP


Sujet :

API, COM et SDKs Delphi

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Points : 23
    Points
    23
    Par défaut Zipper plusieurs fichiers avec Abbrevia TP
    Bonjour,

    Comme conseillé dans certains posts, j'ai téléchargé l'Abbrevia TurboPower pour compresser mes fichiers depuis une application qui tourne en Delphi...

    Cependant, j'arrive à compresser un seul fichier. Si je veux en mettre plusieurs dans le même fichier zip, cela ne fonctionne pas !

    Y a t-il quelque chose de spécial à faire pour que ce que je veux fonctionne ???? Si oui, pouvez-vous m'aider ? Merci d'avance

  2. #2
    Membre éprouvé
    Avatar de octal
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    441
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 441
    Points : 957
    Points
    957
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    procedure ZipMesFichiers;
    var AbZipKit : TAbZipKit;
    begin
      AbZipKit := TAbZipKit.create(nil);
      try
        AbZipKit.TempDirectory := 'c:\toto\';
        AbZipKit.BaseDirectory := 'c:\toto\';
        AbZipKit.AutoSave      := true;
        AbZipKit.OpenArchive( 'c:\toto\MonArchiveDeTxt.zip');
        AbZipKit.AddFiles('*.txt',  0);
      // et on rajoute un fichier encore au format doc
         AbZipKit.AddFiles('Lefichier.doc',  0);
        AbZipKit.CloseArchive;
      finally
        AbZipKit.Free;
      end;
    end;
    G pas compilé mais ca devrait marcher ...
    dans le uses faudra rajouter
    quand tu fait appel à AbZipKit.AddFiles('Lefichier.doc', 0);
    alors faudra comprendre une chose:
    si tu met pas de chemin devant le nom du fichier il prendra par défaut

    le AbZipKit.BaseDirectory + nomdufichier
    sinon si tu passe la totale du genre
    AbZipKit.AddFiles('c:\autreRep\Lefichier.doc', 0);
    il yra le chercher au bon endroit.


    Si t'as des soucis n'hesites pas moi
    http://www.pocketmt.com GLCD Font Creator home site.

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2004
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 24
    Points : 23
    Points
    23
    Par défaut
    OK ça fonctionne merci beaucoup

    A+

  4. #4
    Membre éprouvé
    Avatar de octal
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    441
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 441
    Points : 957
    Points
    957
    Par défaut
    ok ...
    encore une chose ... quand tu rajoute des fichiers avec AddFiles(...) le chemin complet du fichier est stocké (archivé) dans le Zip. Si tu veux pas avoir les chemin dans le zip il faudra rajouter la ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AbZipKit.StoreOptions  := [soStripDrive, soStripPath, soRemoveDots];
    juste avant le OpenArchive.
    Ces options sont les suivantes:
    - soStripDrive : vire les nom de lecteurs, et donc les chemins sont stocké dans l'archive sous une forme relative au rep courant du genre "\toto\monFichier.txt'
    - soStripPath : vire le chemin complet et donc dans l'archive t'aura juste les noms de fichiers .

    Concernant l'option AbZipKit.AutoSave := True
    Elle informe abZipKit de mettre à jour la totalité de l'archive à jour à chaque fois que l'on rajoute/supprime/renomme un fichier dans l'archive. Pour accélérer la compression il vaudrai mieux la mettre à False. Cependant un bug dans Abbrevia (je sais pas s'il a été réglé dans la dernière version) fait en sorte que dans certains cas (quand c à False) abbrevia marche pas du tout ...ce pb je l'ai eu (ainsi que pas mals de dévloppeurs que je connais) quand on compresse une archive directement sur un lecteur amovible sur A:\ avec des disquettes ... sur les lecteurs zip je l'ai pas eu (heureusement). De meme on l'a sur les lecteurs Novell.
    Deuxieme remarque: Quand on a une archive sur un lecteur réseau, et que l'on essaie de la décomprésser, il faut impérativement la décomprésser dans un rép temporaire local (mettre AbZipKit.TempDirectory en Local) sinon sur XP et Win2000+SP4 ca marche pas sur les lecteurs réseaux, il trouve que l'archive est abimée, surtotu si le nom du poste local, ou celui qui sur lequel ya le lecteur réseau contient des lettres accentuées dans le nom.
    voilà .. j'espère que ca pourra vous être utile. Je pense meme que je vais faire un petit article spécial abbreviaZip puisque je vois que beaucoup de monde veux faire dela compression avec delphi. Sinon, si ce n'est ces remarques là ce kit là marche très très bien. On l'utilise dans pas mal d'appli commerciales sans pb depuis un bon bout de temps.

    Enfin N'oublie pas de rajouter [RESOLU]
    http://www.pocketmt.com GLCD Font Creator home site.

  5. #5
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    Citation Envoyé par octal
    Je pense meme que je vais faire un petit article spécial abbreviaZip puisque je vois que beaucoup de monde veux faire dela compression avec delphi.
    Excellente idée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Compresser plusieurs fichiers avec GZip
    Par Fly3R dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/09/2007, 13h54
  2. Réponses: 2
    Dernier message: 30/08/2007, 23h15
  3. comment zipper plusieurs fichiers dans un seul
    Par diamonds dans le forum Linux
    Réponses: 4
    Dernier message: 22/03/2007, 20h15
  4. Télécharger plusieurs fichiers avec Wget
    Par Guilhem_mdg dans le forum Applications et environnements graphiques
    Réponses: 1
    Dernier message: 21/02/2007, 16h12
  5. [C#] Compresser plusieurs fichiers avec GZipStream, help
    Par TheParadoX dans le forum Windows Forms
    Réponses: 3
    Dernier message: 28/08/2006, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo