Bonjour.
Pour un script, j'ai besoin de
4 fichiers zip.
Donc, j'utlise l'include zip.au3.
Mais chacun des scripts possèdent
les mêmes dossiers.

Donc, du coup, j'ai un fenêtre
qui me demande si j'autorise le déplacement du dossier.
Les fichiers ne sont pas les mêmes,
seul les dossiers sont identiques.
Pour faire simple, je décompresse ces 4 fichiers ZIP dans le même dossier :
c:\Program Files (x86)\GnuWin32 (pour les systèmes 64bits) ou c:\Program Files\GnuWin32 (pour les systèmes 32bits)
Voici le code :
► Afficher le textecode
Code : Tout sélectionner
#RequireAdmin
#include <file.au3>
#include <_FileListToArrayNT.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <zip.au3>
$RDL = @TempDir & "\RecursifDL\"
Global $Form1, $dirwget, $DIR_ZIPFILE = $RDL & "ZIPFILE\"
DirRemove($RDL, 1)
DirCreate($RDL)
DirRemove($DIR_ZIPFILE, 1)
DirCreate($DIR_ZIPFILE)
FileInstall("bin.zip", $DIR_ZIPFILE & "bin.zip")
FileInstall("dep.zip", $DIR_ZIPFILE & "dep.zip")
FileInstall("doc.zip", $DIR_ZIPFILE & "doc.zip")
FileInstall("src.zip", $DIR_ZIPFILE & "src.zip")
instWGET()
$Form1 = GUICreate("RecursifDL", 615, 80, 192, 124)
GUICtrlCreateLabel("Indiquez le lien où débuter le téléchargement récursif", 10, 10, 320, 20)
GUICtrlSetFont(-1, 9, 400, 0, "comic sans ms")
$iUrl = GUICtrlCreateInput('', 10, 35, 400, 20)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
DirRemove($RDL, 1)
Exit
EndSwitch
WEnd
Func instWGET()
If @OSArch = "X86" Then
$dirwget = @ProgramFilesDir & "\GnuWin32"
Else
$dirwget = @ProgramFilesDir & " (x86)\GnuWin32"
EndIf
DirRemove($dirwget, 1)
DirCreate($dirwget)
FileDelete(@WindowsDir & "\wget.exe")
$listzipfile = _FileListToArrayNT($DIR_ZIPFILE, "*.zip", 1, 2)
$Result = UBound($listzipfile) - 1
For $i = 1 To $Result
If Not @error Then
MyUnzipAllHide($listzipfile[$i], $dirwget)
EndIf
Next
MsgBox(0, "", "fini !!!")
ShellExecute($dirwget); & "\bin")
EndFunc ;==>DLWGET
Func MyUnzipAllHide($Zip, $Dest)
$oApp = ObjCreate("Shell.Application")
$oApp.Namespace($Dest).CopyHere($oApp.Namespace($Zip).Items, 4)
EndFunc ;==>MyUnzipAllHide
Quand je l'exécute, voici que ce j'obtiens comme message de demande de confirmation :
dossier bin
dossier manifest
dossier man
dossier manifest (bis)
dossier manifest (ter)
Avez-vous une idée pour ne plus avoir ces demandes ?
Merci à vous

@+