[UDF] 7-Zip avec Dll x32 et x64

Partagez des fonctions et des UDF AutoIt.
Règles du forum
.
Cautex
Niveau 2
Niveau 2
Messages : 19
Enregistré le : mar. 05 juin 2012 17:24
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#41

Message par Cautex » mar. 16 févr. 2016 14:44

Bonjour,

Petit déterrage de topic mais udf que je commence à utiliser intensivement et voici un problème que je rencontre:
la fonction _7ZipAdd ne fonctionne pas lorsqu'on lui demande d'ajouter à l'archive un fichier contenant le caractère "°" (symbole degré).
la fonction ne retourne pas d'erreur et n'ajoute pas le fichier à l'archive (le problème semble venir de la dll).

pour le moment je contourne le problème simplement en supprimant ce caractère du nom des fichiers mais si cela pouvait être corrigé ça serait top :)

Sinon avant j’utilisais l'udf _Zip.au3 de wraithdu mais je le trouve moins stable que 7Zip.au3 .

Dans tous les cas merci pour ce travail :wink:

Avatar du membre
walkson
Membre émérite
Membre émérite
Messages : 463
Enregistré le : ven. 12 août 2011 18:49
Localisation : Essonne
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#42

Message par walkson » mer. 17 févr. 2016 12:06

Bonjour,
C'est vrai que ça date "2008". Je n'ai pas testé l'UDf mais je sais que l'on peut en command line créer une archive.
Il suffit de télécharger à cette adresse http://www.7-zip.org/a/7z1514-extra.7z (7-Zip Extra: standalone console version) et de récupérer 7za.exe.
Ce programme fonctionne seul sans DLL ou installation. Après, il suffit de faire par exemple ShellExecute("7za.exe","a ARC.7z C:\Users\Pc\Desktop\Alpha°")
Le signe degré ne pose pas de problème
Voilà le détail des CL
► Afficher le bloc
ps: il y a eu une MAJ en décembre 2015
Cordialement,
Walkson

Cautex
Niveau 2
Niveau 2
Messages : 19
Enregistré le : mar. 05 juin 2012 17:24
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#43

Message par Cautex » mer. 17 févr. 2016 16:21

Bonjour walkson,

merci, je vais suivre ton conseil.

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#44

Message par Sydneysyd » jeu. 29 juin 2017 23:49

Je viens de lire tous les postes, ainsi que l'udf d'exemple pour une chose que je veux faire mais je n'y arrive pas...

Au passage, merci Tlem pour ce partage, car c'est un UDF génial ! ! ! ^^

Code : Tout sélectionner

;Example 2
$ArcFile = FileOpenDialog("Select archive", "", "Archive Files (*.7z;*.zip;*.gzip;*.bzip2;*.tar)")
If @error Then Exit

$Output = FileSelectFolder("Select output folder", "")
If @error Then Exit

$sExclude = "*.bmp"

$retResult = _7ZIPExtractEx(0, $ArcFile, $Output, 0, 1, 1, 0, 0, 0, $sExclude)
If @error = 0 Then
	MsgBox(64, "_7ZIPExtractEx", $retResult)
Else
	MsgBox(16, "_7ZIPExtractEx", "Error occurred")
EndIf

Donc, je me doute que c'est là dedans que j'ai réponse mais je ne vois vraiment pas.

Code : Tout sélectionner

_7ZIPExtract(0, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\")
Tout se dézippe correctement, mais mon archive à plusieurs dossiers, et tout se dézippe dans le même dossier !

J'ai vu qu'un membre avait le même souci et Tlem a dit d'aller voir dans le code plus haut.

Donc, je pense que dans les options, il faut que je mette 0 ou 1 après les virgules, mais comment je sais à quoi cela correspond ?

Ex :

Code : Tout sélectionner

_7ZIPExtract(0, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\",0,1)
Je suis sûr que c'est simple, mais là je capte pas...

Merci d'avance

Cdt
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11111
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#45

Message par Tlem » ven. 30 juin 2017 00:33

; #FUNCTION# ====================================================================================================================
; Name...........: _7ZIPExtract
; Description ...: Extracts files from archive to the current directory or to the output directory
; Syntax.........: _7ZIPExtract($hWnd, $sArcName[, $sOutput = 0[, $sHide = 0[, $sOverwrite = 0[, $sRecurse = 1[, _
; $sIncludeArc[, $sExcludeArc[, $sIncludeFile = 0[, $sExcludeFile = 0[, $sPassword = 0[, _
; $sYes = 0]]]]]]]]]])
; Parameters ....: $hWnd - Handle to parent or owner window
; $sArcName - Archive file name
; $sOutput - Output directory
; $sHide - Use this switch if you want the CallBack function to be called
; $sOverwrite - Overwrite mode: 0 - Overwrite All existing files without prompt, _
; 1 - Skip extracting of existing files, _
; 2 - Auto rename extracting file, _
; 3 - auto rename existing file
; $sRecurse - Recursion method: 0 - Disable recursion
; 1 - Enable recursion
; 2 - Enable recursion only for wildcard names
; $sIncludeArc - Include archive filenames
; $sExcludeArc - Exclude archive filenames
; $sIncludeFile - Include filenames, specifies filenames and wildcards or list file that specify processed files
; $sExcludeFile - Exclude filenames, specifies what filenames or (and) wildcards must be excluded from operation
; $sPassword - Specifies password
; $Yes - assume Yes on all queries
;
; Return values .: Success - Returns the string with results
; Failure - Returns 0 and and sets @error
; @Error - 0 = No error.
; |1 = Function failed
; |2 = Dll not started
;
; Author ........: R. Gilman (rasim)
; Modified.......:
; Remarks .......:
; Related .......:
; Link ..........:
; Example .......:
; ===============================================================================================================================
Bonsoir, a vu de nez, je dirait qu'il faut utiliser l'option $sRecurse.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#46

Message par Sydneysyd » ven. 30 juin 2017 06:40

Merci beaucoup Tlem mais, apparemment cela ne fonctionne pas...

Code : Tout sélectionner

_7ZIPExtract(0, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\",1,0,1)
Je mets bien 1 sur avant la fin de la parenthèse (ce qui correspond à la recursive) et pourtant il m'extrait tout dans le meme dossier, à la différence que j'ai plein de dossier vide en plus !

Je rate un truc mais quoi ?

J'ai lu les autres options, mais je ne vois rien qui m'indique d'extraire les dossiers tel qu'ils sont compressés.

Je suis sur que je vais passer pour un âne quand je vais voir la solution, mais c'est toujours quand c'est sous son nez que l'on ne voit rien...
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#47

Message par Sydneysyd » ven. 30 juin 2017 12:11

Après avoir pris un peu de recul, je viens de comprendre (enfin j'espère...) que c'est le premier nombre qui détermine les dossiers d'extraction comme dans le zip :)

Code : Tout sélectionner

_7ZIPExtract(1, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\",1,0,1)
Le souci est que quand je lance mon code, et que je clique sur le bouton installer, le logiciel ne répond plus...
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11111
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#48

Message par Tlem » ven. 30 juin 2017 18:01

Bonjour sydnaysyd,
Je n'ai pour l'instant pas de temps pour regarder ça de près.
Par contre je peux vous dire que le "premier nombre" ne sert pas à ce que vous croyez. Il s'agit du handle retourné par la fonction 7zipStartup ou un nom de ce genre (je suis sur le smartphone, donc pas accès à la liste des fonctions).
Vous devriez jeter un coup d'œil sur les exemples de L'UDF. Il me semble qu'il y a un exemple avec la récursion.

Bonne recherche.

Edit : Au cas où... Prenez bien L'UDF sur le lien que je donne vers le forum US et non L'UDF joint au premier message (qui ne sert que d'archive).


Envoyé de mon SM-N9005 en utilisant Tapatalk


Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#49

Message par Sydneysyd » ven. 30 juin 2017 21:40

Merci Tlem de ce retour, j'ai cherché sur le forum autoit mais je n'ai rien trouvé et les liens de l'udf original sont HS...

Je pense avoir compris les options et dans quel sens les mettre

[0, dossier d'origine de l'archive, dossier de sortie de l'archive dezippée, on cache ou pas l'extraction, on ecrase ou pas, on fait la recursivité ou non, on inclue les archives, on exclue les archives, on inclue les fichiers, on exclue les fichiers, on met un mot de passe, on repond oui a tout] (je fais simple lol)

Code : Tout sélectionner

_7ZIPExtract(0, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\",0,0,2,1,1,0,0,0) 
donc je pense ne pas me tromper en mettant cela, mais en fait il me mets qu'il y a une errreur à l'extraction de l'archive...

Je ne vois pas ce que rate...
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#50

Message par Sydneysyd » ven. 30 juin 2017 21:47

Je continue au fur et à mesure, et je me rend qu'il me l'erreur au moment où je valide la récursivité dans le code !

Code : Tout sélectionner

 _7ZIPExtract(0, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\",1,0,1,1)
Donc, je ne vois pas pourquoi, il refuse de faire la recursivité, en plus j'ai bien mis les dll là où se trouve le code... Le poste est en 64Bits en W7, je ne pense pas que cela peut bloquer...
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11111
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#51

Message par Tlem » ven. 30 juin 2017 22:45

Bonsoir Sydneysyd.
J'ai trouvé d’où vient le problème ...
; Name...........: _7ZIPExtract
; Description ...: Extracts files from archive to the current directory or to the output directory
; Name...........: _7ZIPExtractEx
; Description ...: Extracts files from archive with full paths to the current directory or to the output directory

Et il est inutile de me demander à quoi sert l'option "Recurse" de la première fonction. ^^
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#52

Message par Sydneysyd » sam. 01 juil. 2017 09:49

Merci Tlem :)

Donc si je comprends bien, je ne peux pas extraire l'archive tel qu'elle est zippée ?
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11111
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#53

Message par Tlem » sam. 01 juil. 2017 10:23

Heuuu non vous ne comprenez pas bien.
Relisez mon message plusieurs fois. ^^

Envoyé de mon SM-N9005 en utilisant Tapatalk

Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#54

Message par Sydneysyd » sam. 01 juil. 2017 13:43

J'ai vraiment du mal...

Donc tous les dossiers sont extraits dans le même dossier ?
Quelle commande je fais pour que cela sorte comme dans le zip ?
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11111
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#55

Message par Tlem » sam. 01 juil. 2017 14:06

Sydneysyd a écrit :
sam. 01 juil. 2017 13:43
J'ai vraiment du mal...
Je confirme !
Sydneysyd a écrit :
sam. 01 juil. 2017 13:43
Quelle commande je fais pour que cela sorte comme dans le zip ?
_7ZIPExtractEx
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#56

Message par Sydneysyd » sam. 01 juil. 2017 14:17

Un grand MERCI Tlem !

Code : Tout sélectionner

_7ZIPExtractEx(0, @tempdir & "\EasyCloud\GoogleChrome.7z", @ProgramFilesDir & "\GoogleChrome\",1,0,1,0)
L'extraction se fait correctement :D

Je pense changer mon pseudo pour 'Le boulet' lol

Merci encore
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11111
Enregistré le : ven. 20 juil. 2007 20:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#57

Message par Tlem » sam. 01 juil. 2017 14:19

C'est super, votre projet avance ...
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".

Avatar du membre
Sydneysyd
Niveau 5
Niveau 5
Messages : 177
Enregistré le : jeu. 24 nov. 2011 08:58
Status : Hors ligne

Re: [UDF] 7-Zip avec Dll x32 et x64

#58

Message par Sydneysyd » sam. 01 juil. 2017 17:45

lol, oui, je pense que par rapport au fait que je ne peux pas avoir un exe classique depuis mon poste, la solution de portabilisation n'est pas si mal :

- Installation plus rapide
- Paramètres déjà mis
-Il n'y a qu'en jouant avec les plus forts que l'on progresse-

Répondre

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités