[WD10 - Fonctions zipXXX] - Comment ne pas écraser les fichiers lors de la décompression ?
1 réponse
Yanick Charland
Bonjour à toutes et à tous,
J'utilise (dans l'ordre) les fonctions zipCrée, zipAjouteRépertoire,
zipCréeExe, zipFerme pour me créer un fichier auto-extractible.
Ensuite, lorsque l'usager tente d'extraire les informations de ce
fichier, nous aimerions (les usagers et moi !) que les fichiers
présents dans le répertoire cible ne soient pas écrasés (peu nous
importe que les fichiers existants soient plus anciens que ceux
contenus dans l'archive).
Est-ce possible ?
Voici le détail de ma procédure de création de mon archive :
*** La procédure reçoit deux paramètres
- sNomFichierZip qui est le nom de l'archive EXE avec le répertoire
complet où le fichier doit être créé.
- sRepExtraction qui est le répertoire d'extraction côté client.
sZip est une chaîne = "monZip"
sPathZIP est une chaîne = "C:\TEMP.zip"
// Si le fichier final existe, on le supprime
SI fFichierExiste(sNomFichierZip) ALORS
fSupprime(sNomFichierZip, frLectureSeule)
FIN
// On crée le fichier ZIP
zipCrée(sZip, sPathZIP)
// On ajoute les fichiers
zipAjouteRépertoire(sZip, fExtraitChemin(sNomFichierZip, fDisque +
fRépertoire), Vrai, fExtraitChemin(sNomFichierZip, fDisque +
fRépertoire))
// On crée le fichier auto-extractible
zipCréeExe(sZip,sNomFichierZip,zipAvecIHM,"",sRepExtraction)
// On ferme et on détruit le fichier ZIP (pour ne garder que le EXE
auto-extractible)
zipFerme(sZip)
fSupprime(sPathZIP)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles TOURREAU
Yanick Charland vient de nous annoncer :
Bonjour à toutes et à tous,
J'utilise (dans l'ordre) les fonctions zipCrée, zipAjouteRépertoire, zipCréeExe, zipFerme pour me créer un fichier auto-extractible. Ensuite, lorsque l'usager tente d'extraire les informations de ce fichier, nous aimerions (les usagers et moi !) que les fichiers présents dans le répertoire cible ne soient pas écrasés (peu nous importe que les fichiers existants soient plus anciens que ceux contenus dans l'archive).
Est-ce possible ?
Voici le détail de ma procédure de création de mon archive :
*** La procédure reçoit deux paramètres - sNomFichierZip qui est le nom de l'archive EXE avec le répertoire complet où le fichier doit être créé. - sRepExtraction qui est le répertoire d'extraction côté client.
sZip est une chaîne = "monZip" sPathZIP est une chaîne = "C:TEMP.zip" // Si le fichier final existe, on le supprime SI fFichierExiste(sNomFichierZip) ALORS fSupprime(sNomFichierZip, frLectureSeule) FIN
// On crée le fichier ZIP zipCrée(sZip, sPathZIP)
// On ajoute les fichiers zipAjouteRépertoire(sZip, fExtraitChemin(sNomFichierZip, fDisque + fRépertoire), Vrai, fExtraitChemin(sNomFichierZip, fDisque + fRépertoire))
// On crée le fichier auto-extractible zipCréeExe(sZip,sNomFichierZip,zipAvecIHM,"",sRepExtraction)
// On ferme et on détruit le fichier ZIP (pour ne garder que le EXE auto-extractible) zipFerme(sZip) fSupprime(sPathZIP)
Merci bien pour votre temps !
Tu dois décompresser les fichiers un par un comme ceci :
POUR i = 1 A zipNbFichier("zip") ch = zipExtraitChemin("zip", i) SI fFichierExiste(ch) = Faux ALORS zipExtraitFichier("zip", i) FIN FIN
Cordialement
-- Gilles TOURREAU Responsable informatique
Société P.O.S Spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Yanick Charland vient de nous annoncer :
Bonjour à toutes et à tous,
J'utilise (dans l'ordre) les fonctions zipCrée, zipAjouteRépertoire,
zipCréeExe, zipFerme pour me créer un fichier auto-extractible. Ensuite,
lorsque l'usager tente d'extraire les informations de ce fichier, nous
aimerions (les usagers et moi !) que les fichiers présents dans le répertoire
cible ne soient pas écrasés (peu nous importe que les fichiers existants
soient plus anciens que ceux contenus dans l'archive).
Est-ce possible ?
Voici le détail de ma procédure de création de mon archive :
*** La procédure reçoit deux paramètres
- sNomFichierZip qui est le nom de l'archive EXE avec le répertoire complet
où le fichier doit être créé.
- sRepExtraction qui est le répertoire d'extraction côté client.
sZip est une chaîne = "monZip"
sPathZIP est une chaîne = "C:TEMP.zip"
// Si le fichier final existe, on le supprime
SI fFichierExiste(sNomFichierZip) ALORS
fSupprime(sNomFichierZip, frLectureSeule)
FIN
// On crée le fichier ZIP
zipCrée(sZip, sPathZIP)
// On ajoute les fichiers
zipAjouteRépertoire(sZip, fExtraitChemin(sNomFichierZip, fDisque +
fRépertoire), Vrai, fExtraitChemin(sNomFichierZip, fDisque + fRépertoire))
// On crée le fichier auto-extractible
zipCréeExe(sZip,sNomFichierZip,zipAvecIHM,"",sRepExtraction)
// On ferme et on détruit le fichier ZIP (pour ne garder que le EXE
auto-extractible)
zipFerme(sZip)
fSupprime(sPathZIP)
Merci bien pour votre temps !
Tu dois décompresser les fichiers un par un comme ceci :
POUR i = 1 A zipNbFichier("zip")
ch = zipExtraitChemin("zip", i)
SI fFichierExiste(ch) = Faux ALORS
zipExtraitFichier("zip", i)
FIN
FIN
J'utilise (dans l'ordre) les fonctions zipCrée, zipAjouteRépertoire, zipCréeExe, zipFerme pour me créer un fichier auto-extractible. Ensuite, lorsque l'usager tente d'extraire les informations de ce fichier, nous aimerions (les usagers et moi !) que les fichiers présents dans le répertoire cible ne soient pas écrasés (peu nous importe que les fichiers existants soient plus anciens que ceux contenus dans l'archive).
Est-ce possible ?
Voici le détail de ma procédure de création de mon archive :
*** La procédure reçoit deux paramètres - sNomFichierZip qui est le nom de l'archive EXE avec le répertoire complet où le fichier doit être créé. - sRepExtraction qui est le répertoire d'extraction côté client.
sZip est une chaîne = "monZip" sPathZIP est une chaîne = "C:TEMP.zip" // Si le fichier final existe, on le supprime SI fFichierExiste(sNomFichierZip) ALORS fSupprime(sNomFichierZip, frLectureSeule) FIN
// On crée le fichier ZIP zipCrée(sZip, sPathZIP)
// On ajoute les fichiers zipAjouteRépertoire(sZip, fExtraitChemin(sNomFichierZip, fDisque + fRépertoire), Vrai, fExtraitChemin(sNomFichierZip, fDisque + fRépertoire))
// On crée le fichier auto-extractible zipCréeExe(sZip,sNomFichierZip,zipAvecIHM,"",sRepExtraction)
// On ferme et on détruit le fichier ZIP (pour ne garder que le EXE auto-extractible) zipFerme(sZip) fSupprime(sPathZIP)
Merci bien pour votre temps !
Tu dois décompresser les fichiers un par un comme ceci :
POUR i = 1 A zipNbFichier("zip") ch = zipExtraitChemin("zip", i) SI fFichierExiste(ch) = Faux ALORS zipExtraitFichier("zip", i) FIN FIN
Cordialement
-- Gilles TOURREAU Responsable informatique
Société P.O.S Spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr