pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Exemples évolués

Chaque exemple montre une utilisation pratique de la fonction du WLangage.

Quand plusieurs syntaxes sont possibles, chacune est illustrée indépendamment.

Revenir à la page des exemples évolués


Le code suivant permet d'extraire et de décompresser tous les fichiers d'une archive. Le chemin mémorisé des fichiers comprend : le nom des répertoires, le nom et l'extension du fichier. Les fichiers extraits sont copiés sur disquettes ("A:\Archive").



// Déclaration et initialisation des variables
NomRépertoire est une chaîne
NomArchive est une chaîne = "MonArchive"
CodeErreurCréation est un entier
CodeErreurAjout est un entier
CodeErreurExtrait est un entier

// Création d'une archive
CodeErreurCréation = zipCrée ( NomArchive , "C:\Répertoire\Archives\ArchivePdf.wdz" )
SI CodeErreurCréation = 0 ALORS
   
// Sélection du répertoire
    NomRépertoire = fRepSélecteur ( "" , "" , "Répertoire à ajouter" )
    // Ajoute la totalité des fichiers du répertoire sélectionné
   
// et de ses sous-répertoires dans l'archive
    
CodeErreurAjout = zipAjouteRépertoire ( NomArchive , NomRépertoire , Vrai , zipRépertoire )
    SI CodeErreurAjout = 0 ALORS
       // Extraction et décompression des fichiers
       // Les fichiers sont copiés sur disquettes
      CodeErreurExtrait = zipExtraitTout ( NomArchive , "A:\Archive" )
      // Affichage du message d'erreur si les fichiers n'ont pas été extraits
      SI CodeErreurExtrait <> 0 ALORS
        Erreur ( zipMsgErreur ( CodeErreurExtrait ))
      FIN
    SINON
       // Affichage du message d'erreur si les fichiers n'ont pas été ajoutés
       Erreur ( zipMsgErreur ( CodeErreurAjout
))
    FIN
SINON
   // Affichage du message d'erreur si l'archive n'a pas été créée
   Erreur ( zipMsgErreur ( CodeErreurCréation
))
FIN


L e code suivant permet d'extraire et de décompresser tous les fichiers d'une archive. Le chemin mémorisé des fichiers comprend : le nom des répertoires, le nom et l'extension du fichier. Les fichiers sont extraits dans le répertoire en cours (constante zipRépertoire ). Une jauge permet d'indiquer le pourcentage de décompression. Cette jauge sera affichée dans la barre de message.



--Code de déclaration de la fenêtre
GLOBAL
NomArchive est une chaîne = "MonArchive"

--Code de clic sur BoutonExtraitFichier
// Initialisation
NomRépertoire est une chaîne
CodeErreurCréation est un entier
CodeErreurAjout est un entier
CodeErreurExtrait est un entier
NumEvénement est un entier

// Création d'une archive
CodeErreurCréation = zipCrée ( NomArchive , "C:\Répertoire\Archives\ArchivePdf.wdz" )

SI
CodeErreurCréation = 0 ALORS
   // Sélection du répertoire
   NomRépertoire = fRepSélecteur ( "" , "" , "Répertoire à ajouter" )
   // Ajoute la totalité des fichiers du répertoire sélectionné
   // et de ses sous-répertoires dans l'archive
   CodeErreurAjout = zipAjouteRépertoire ( NomArchive , NomRépertoire , Vrai , zipRépertoire )
   SI CodeErreurAjout = 0 ALORS
      // Appel de l'événement
      NumEvénement = Evénement ( "JaugeCompression" , FenEnExecution (), JaugeCompactage )
      // Extraction et décompression des fichiers dans le répertoire courant
      CodeErreurExtrait = zipExtraitTout ( NomArchive , zipRépertoire )
      SI CodeErreurExtrait <> 0 ALORS
         Erreur ( zipMsgErreur ( CodeErreurExtrait ))
      FIN
      FinEvénement ( NumEvénement )
  SINON
      // Affichage du message d'erreur si les fichiers n'ont pas été ajoutés
      Erreur ( zipMsgErreur ( CodeErreurAjout ))
  FIN
SINON
   // Affichage du message d'erreur si l'archive n'a pas été créée
   Erreur ( zipMsgErreur ( CodeErreurCréation ))
FIN

// Procédure locale à la fenêtre. Cette procédure permet de gérer la jauge.
PROCÉDURE JaugeCompression ( wMesssage , wParam , lParam )
SI wParam < 100 ALORS
    Jauge ( wParam , 100 , zipFichierEnCours ( NomArchive ))
    // Rafraîchissement de la fenêtre
    Multitache (- 1 )
SINON
   // La compression est terminée
   Jauge ()
FIN