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

C Discussion :

Creer une archive avec 7zip en C


Sujet :

C

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 13
    Par défaut Creer une archive avec 7zip en C
    Bonjour,

    J'utilise 7zip en version ligne de commande pour créer une archive au format TAR.

    Jusque là pas de problème, par contre dans l'archive j'ai le répertoire d'origine,puis les fichiers qu'il contient or je veut que les fichiers.

    Quelqu'un peut me dire comment corrigé car le 7zip ne gére pas les chemins absolue.

    Voici le bout de code en C utilisé sous DevC++:
    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
    19
    20
    21
    22
    23
    logAction(FichierLog, "\nArchivage des PDF du repertoire : ");
    logAction(FichierLog, RepertoireOUT);
    logAction(FichierLog, "\n");
    sprintf(ChaineSystem, "7za.exe a %s %s\\*.PDF -r- >> Log\\Log7zip_%s.txt",CheminArchiveCible,RepertoireOUT, DateStamp);
      logAction(FichierLog, ChaineSystem);
      logAction(FichierLog, "\n");
      ResultExec = system(ChaineSystem); // Exécution
      if (ResultExec != 0) {
        logAction(FichierLog, "\nATTENTION ! Erreur lors du traitement d'archivage. \nType d'erreur : ");
        switch (ResultExec) {
               case 1: logAction(FichierLog, "Warning (Non fatal error(s)). For example, some files were locked by other application during compressing. So they were not compressed.\n");break;
               case 2: logAction(FichierLog, "Fatal Error !\n"); break;
               case 7: logAction(FichierLog, "Command-line error.\n"); break;
               case 8: logAction(FichierLog, "Not enough memory for operation. \n"); break;
               case 255: logAction(FichierLog, "User stopped the process.\n"); break;
               default: logAction(FichierLog, "Unknown Error !\n"); break;
        }
        logAction(FichierLog, "\n>> Consultez les logs de 7zip pour plus de détails sur l'erreur.\n");
        system("pause");
        fclose(FichierLog);
        return -1;
      }
    Je pense que le problème vient du fait que je passe en paramétre le chemin (CheminArchiveCible), puis le répertoire (RepertoireOUT).

    Si quelqu'un a une idée
    Merci d'avance

  2. #2
    Membre émérite
    Avatar de D[r]eadLock
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    504
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 504
    Par défaut
    À mon avis ça depend des options de 7za. Regarde la doc (ou le --help).
    Bon je vois pas trop le C la-dedans . À la rigueur si tu avais utiliser la lib LZMA...

    Sinon, tu peux peut-etre aller dans le repertoire (chdir ou equivalent windows) et lancer l'execution sans le nom du repertoire.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 13
    Par défaut
    Ok je vais faire le test

    Merci pour la réponse

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

Discussions similaires

  1. [JAR] créer une archive .jar contenant des images.
    Par keny dans le forum Général Java
    Réponses: 2
    Dernier message: 14/03/2005, 13h17
  2. Creer une DLL avec des icônes
    Par Larion dans le forum C++Builder
    Réponses: 5
    Dernier message: 13/03/2005, 17h28
  3. [postgresql]creer une table avec plusieurs clés primaire??
    Par perlgirl dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/11/2004, 17h24
  4. Creer une requete avec des LEFT JOIN et des GRO
    Par donbuz dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/09/2004, 15h53
  5. [MFC] creer une liste avec des check????
    Par ginounet dans le forum MFC
    Réponses: 4
    Dernier message: 16/06/2004, 11h47

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