Procedure.s GetProgramDirectory() ; Récupère le dossier d'exécution
Protected Dossier.s
Dossier = Space(255)
GetCurrentDirectory_(255, @Dossier)
If Right(Dossier, 1) <> "\" ; si l'adresse ne finit pas par "\"
Dossier = Dossier + "\" ; on rajoute le "\"
EndIf
ProcedureReturn Dossier
EndProcedure
; On choisi le nom du zip
Zip.s = "Truc.Zip"
Zip = ReplaceString(Zip, " ", "_") ; je remplace les espaces par des "_" car c'est pour faire un fichier téléchargeables sur le net
; Ici, on crée la liste de fichier à zipper
If CreateFile(0, "zip.txt")
; on ajoute le nom des fichiers ou dossiers, tout est en relatif par rapport au dossier d'exécution de WinRar
WriteStringN("Setup.exe")
WriteStringN("Setup.ini")
WriteStringN("Setup\*.*") ; pour les dossiers, on peut mettre un filtre. les dossiers vides ne seront pas ajoutés.
CloseFile(0)
EndIf
If FileSize(Zip) >= 0 ; On supprime l'archive existante, car sinon, winrar ajoute les nouveaux fichiers sans enlever les anciens
DeleteFile(Zip)
EndIf
RunProgram("C:\Program Files\WinRAR\WinRar.exe", "a -r -m5 " + Zip + " @zip.txt", GetProgramDirectory(), 1)
; Signification des paramètres
; a : ajout de fichier
; -r : ajout récursif pour les dossiers
; -m5 : meilleur taux de compression
; Zip : Nom du fichier zip a créé
; @Zip.txt : Fichier contenant la liste de fichier à zipper
; On supprime la liste de fichiers à zipper
DeleteFile("zip.txt")
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
DeleteFile("archive.zip")
Protected Dossier.s
Dossier = Space(255)
GetCurrentDirectory_(255, @Dossier)
If Right(Dossier, 1) <> "\" ; si l'adresse ne finit pas par "\"
Dossier = Dossier + "\" ; on rajoute le "\"
EndIf
fileinfo$ = "archive/"
If RunProgram("WinRAR.exe", "a -r -m5 archive.zip "+fileinfo$, Dossier, 1) ; on crée l'archive nommée archive.zip à partir du répertoire archive/
DeleteDirectory("archive", "*.*") ; puis on supprime le répertoire archive/
MessageRequester("Archive générée", "Le fichier archive.zip a été créé avec succès")
Else
MessageRequester("Erreur WinRAR", "Vous devez installer le logiciel WinRAR sur votre PC afin de générer l'archive. Il est disponible sur le site web 3w.telecharger.com!")
EndIf
Ca fait super pro la petite fenêtre WinRAR qui s'ouvre pour compresser