Il s'agit d'une classe et d'un module permettant d'ouvrir un fichier ZIP pour en extraire le contenu ou y ajouter des fichiers. Exemple d'utilisation :
Dim cZip as ccZip
Set cZip = New ccZip
Call cZip.Init "Toto.zip ' Si le fichier existe il est ouvert, sinon il est créé
Dim lRet as Long
lRet = cZip.AddFile("D:\temp\Titi.txt)
** Ajoute temp\Titi.txt"
ChDir "d:\temp"
lRet = cZip.AddFile("Titi.txt)
** Ajoute Titi.txt
lRet = cZip.AddFile("D:\temp\Titi.txt, , True)
** Ajoute Titi.txt". Le troisième paramètre indique quil ne faut pas prendre en compte le chemin du fichier.
lRet = cZip.Decompress("D:\temp)
** Décompresse tous les fichiers de larchive dans D:\temp
Dim sName as String
sName = cZip.GetFile(5)
** Renvoie le nom (avec son chemin relatif) du 5è fichier de larchive.
lRet = cZip.Decompress("D:\Temp, Toto.txt)
** Décompresse uniquement le fichier Toto.txt dans D:\temp
Pour le reste je vous laisse vous amuser avec, le source est commenté.
Source / Exemple :
Le projet dans l'archive ZIP est le programme de test dont je me suis servis pour débugger la classe. Pour utiliser la classe ccZip, vous devez avoir zip32.dll et unzip32.dll (fournis dans le zip).
Ajoutez le module mDLLProc.bas et la classe ccZip.cls à votre projet pour pouvoir utiliser la classe.
Conclusion :
Je crois qu'il y a un bug avec les chemins réseaux, il faut obligatoirement connecter un lecteur (la dll n'accepte pas les chemins commencant par \\"
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.