Page 1 sur 1

[R] 7zip - Extraire un fichier

Posté : ven. 20 mai 2011 17:19
par ferrierd
Bonjour,

J'étudie le fichier 7zip.au3 avec utilisation de la dll 7zip-32.dll pour manipuler des archives 7zip.

Malgré mes recherches je reste confronté à un souci:
Je ne trouve pas la fonction (ou le paramètre) qui me permette de n'extraire qu'un seul fichier d'une archive.
J'ai bien vu l'utilisation des fonctions _7zipExtract et _7zipExtractEx, mais j'ai l'impression que l'on ne peut extraire que l'ensemble des fichiers d'une archive 7zip.

Or je cherche à sélectionner un (ou plusieurs) fichiers dans une archive et à n'extraire que celui-ci...

Savez-vous si c'est une fonction particulière?

Merci,
David

Re: [..] 7zip - Extraire un fichier

Posté : ven. 20 mai 2011 17:54
par Tlem
Vous devez utiliser l'option $sIncludeArc de la fonction _7ZIPExtractEx.

Plus de détails dans le fichier 7Zip.au3. :mrgreen:

Re: [..] 7zip - Extraire un fichier

Posté : dim. 22 mai 2011 08:20
par ferrierd
Ok !
J'avais regardé 7zip.au3, et plus particulièrement le fonction 7zipExtractEx mais je n'ai pas du saisir comment fonctionne ce paramètre ($sIncludeArc).

Maintenant que j'ai une piste de recherche je vais pouvoir effectuer des tests dans ce sens...
Merci

Re: [R] 7zip - Extraire un fichier

Posté : jeu. 26 mai 2011 12:30
par ferrierd
Après différents tests, dans la fonction 7zipExtractEx j'ai utilisé l'option $sIncludeFile pour n'extraire qu'un fichier ou répertoire.

un petit exemple rapide:
Décompresser uniquement le fichier readme.txt de l'archive archive.7z dans le repertoire c:\restaure
$sOutput = "c:\restaure"
$sIncluefile = "readme.txt"
$ArFile = "c:\archive.7z"

$retResult = _7ZIPExtractEx($hGUI, $ArcFile, $sOutput, 1,0,1,0,0,$sIncludeFile)


Je n'ai pas su dans l'appel de ma fonction ne pas réécrire les paramètres facultatifs (tous les 1,0,1,0,0,...) mais uniquement ceux que je souhaite modifier.
Au cas où cela pourrait être utile à d'autres...