Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 04-12-2008 14:36:28

nico  
Modérateur
Award: bf
Lieu: Plélan le grand
Date d'inscription: 08-02-2007
Messages: 273
Pépites: 13
Banque: 9,223,372,036,854,775,808

[RESOLU] Zipper un fichier

Bonjour à tous,

Je souhaite ouvrir cette discussion car je voudrais connaitre la methode que vous utilisez pour zipper des fichiers.
Pour ma part, j'utilise deux petits programme DOS PKZIP.EXE, et PKUNZIP.EXE.

Code: pb

string pathname,filename
integer li_retour

pathname = "c:\pesee8.zip"
li_retour = GetFileSaveName("Enregistrer sous", pathname, filename, "ZIP", "Zip Files (*.ZIP),*.ZIP")
If li_retour = 1 then
  If fileexists(pathname) then
    messagebox("export",)
    return  
  Else
    string chemin_zip,chemin_exe,commande,chemin_fichier
        
    chemin_fichier = "c:\peseev4\pesee.hv4"
    chemin_exe = "c:\site_v6\pkzip.exe "
    chemin_zip = pathname
    commande = chemin_exe+chemin_zip+" "+chemin_fichier
    run(commande)
        
    messagebox("export",)  
  End if
End if


Ca fonctionne bien, mais peut être que vous avez de meilleurs methodes
Si c'est le cas, je suis preneur.

Hors ligne

 

#2 04-12-2008 15:13:59

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 748
Pépites: 1,028,846
Banque: 171,170,849,654

Re: [RESOLU] Zipper un fichier

Bonjour,

Pour ma part j'utilise une librairie PB développée par ROLAND SMITH (code libre) http://www.topwizprogramming.com/freecode_zlibwapi.html. c'est un nvo avec toutes les méthodes nécessaires pour zipper/dezipper un fichier.

L'avantage est de ne pas faire appel à de programmes externes. Parcontre, il faut déployer une dll avec l'application zlibwapi.dll.

Hors ligne

 

#3 04-12-2008 15:50:25

nico  
Modérateur
Award: bf
Lieu: Plélan le grand
Date d'inscription: 08-02-2007
Messages: 273
Pépites: 13
Banque: 9,223,372,036,854,775,808

Re: [RESOLU] Zipper un fichier

Merci beaucoup Buck,

je viens de tester ta librairie : Elle marche nickel ., et je pense qu'elle peut intéresser du monde.
Je vais voir comment l'adapter à mon appli.



Si quelqu'un a une autre methode, ça m'intéresse aussi

Hors ligne

 

#4 29-05-2009 15:46:43

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Zipper un fichier

Bonjour,


Je m'y perds un peu dans toutes les fonctions du userobject.

J'ai simplement besoin d'archiver un fichier en batch, je dois donc créer l'archive et ajouter mon fichier dans cette archive.

Pouvez vous éclairer ma lanternne, à savoir quelle fonction je dois utiliser pour réaliser cela ?

Merci d'avance,


Hors ligne

 

#5 29-05-2009 17:54:45

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Zipper un fichier

wazou1812 a écrit:

Bonjour,


Je m'y perds un peu dans toutes les fonctions du userobject.

J'ai simplement besoin d'archiver un fichier en batch, je dois donc créer l'archive et ajouter mon fichier dans cette archive.

Pouvez vous éclairer ma lanternne, à savoir quelle fonction je dois utiliser pour réaliser cela ?

Merci d'avance,


A force de persévérance, j'y suis arrivée comme une grande !

Avec les fonctions of_zipOpen , of_ImportFile et of_zipClose, ça marche.

Il y a juste un problème dans la fonction of_zipopennewfileinzip pour le 'calcul' de la date qui est positionné sur le fichier lorsqu'on le dézippe, mais en corrigeant ce problème, ça marche bien.






Je remets le sujet en résolu.

Hors ligne

 

#6 29-05-2009 17:57:33

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 748
Pépites: 1,028,846
Banque: 171,170,849,654

Re: [RESOLU] Zipper un fichier

Bonjour,

J'étais en train de répondre à ta question pendant ta réponse, pour les autres :

Code: pb

ULong lul_zipFile
Integer li_rc, li_file, li_count
String ls_title, ls_fname, ls_filter, ls_pathname, ls_filename[]

ls_title = 
ls_filter = "All Files (*.*), *.*"

// Ouverture du fichier zip
lul_zipFile = in_ziplib.of_zipOpen(is_zipfile)

li_rc = GetFileOpenName(ls_title, ls_pathname, ls_filename, ls_filter)
li_count = UpperBound(ls_filename)

FOR li_file = 1 TO li_count
  // importation du fichier dans l'archive
  in_ziplib.of_ImportFile(lul_zipFile, ls_pathname + "\" + ls_filename[li_file])
NEXT

// Fermeture du fichier zip
in_ziplib.of_zipClose(lul_zipFile, )

Hors ligne

 

#7 02-06-2009 15:29:52

wazou1812  
Modératrice
Award: bf
Date d'inscription: 24-05-2006
Messages: 610
Pépites: 2,097
Banque: 3,536,631,712,504

Re: [RESOLU] Zipper un fichier

Merci buck,

Cela confirme ce que j'avais codé.


Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22