Page 2 sur 2

Re: [..] bug sur logiciel d'install auto

Posté : lun. 28 janv. 2008 21:16
par sylvanie
puisqu'on dirait que la lecture de l'ini peut être entravée par l'install, pour une raison qui nous échappe, ça vaut êut être le coups d'initiliser la lecture de tous les fichier au démarage :

Code : Tout sélectionner


...
création de la gui 
...
Dim $Name_file[42]
for $i = 0 to 41
    $Name_file[$i]=IniRead("log.ini",$i+1,"fichier","")
Next
for $i = 1 to 42
        If BitAnd(GuiCtrlRead(Eval("check" & $i)),$GUI_CHECKED) Then
            $fichier = $Name_file[$i-1]
            ;$fichier=GuiCtrlRead(Eval("check" & $i),1)
            ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
           download($fichier)
            ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
            unzip($fichier)
           ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
            install($fichier)
            
            
        EndIf   
Next

... 
suite avec les fonctions
 

Re: [..] bug sur logiciel d'install auto

Posté : mar. 29 janv. 2008 13:43
par SurPriseS
Bon j'ai continué avec ta solution et sa marche (j'ai l'impression) beaucoup mieux :oops:
Par contre je ne comprend pas pourquoi il ne lance plus le dézippage.... tout le reste a l'air de se passer normalement... Merci a tous en tout cas :oops:

Edit : j'ai trouvé un return en trop, mais je sais pas si il étais la pour faire autre chose :oops:

Code : Tout sélectionner

Func unzip($fichier_param)
Local $lpid
;Return
$cmd2 = "7za.exe x -y " & $fichier_param

Code : Tout sélectionner

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.2.4.9
 Author:         ToMs/SurPriseS

 Script Function:
    Menu package auto.

#ce ----------------------------------------------------------------------------

; Script Start


#include <GUIConstants.au3>
#include <Date.au3>
;#NoTrayIcon
AutoItSetOption("TrayAutoPause",0)  
AutoItSetOption("TrayIconDebug",1)
; GUI
GuiCreate("Speed Install - Design By ToMs - Code SurPriseS", 500, 470)
GUISetState (@SW_SHOW)

;picture
GuiCtrlCreatePic("logo.jpg",355,30, 120,40)
GUICtrlCreatelabel (_DateTimeFormat( _NowCalc(),2), 355,80)



;chkbox
$ini_titre1 = IniRead("titre.ini","1","titre","")
GUICtrlCreateGroup($ini_titre1, 10, 10, 150, 220)
$ini_ckeck1 = IniRead("log.ini","1","name","")
$check1 = GUICtrlCreateCheckbox ($ini_ckeck1, 20, 25, 120, 20)
$ini_ckeck2 = IniRead("log.ini","2","name","")
$check2 = GUICtrlCreateCheckbox ($ini_ckeck2, 20, 45, 120, 20)
$ini_ckeck3 = IniRead("log.ini","3","name","")
$check3 = GUICtrlCreateCheckbox ($ini_ckeck3, 20, 65, 120, 20)
$ini_ckeck4 = IniRead("log.ini","4","name","")
$check4 = GUICtrlCreateCheckbox ($ini_ckeck4, 20, 85, 120, 20)
$ini_ckeck5 = IniRead("log.ini","5","name","")
$check5 = GUICtrlCreateCheckbox ($ini_ckeck5, 20, 105, 120, 20)
$ini_ckeck6 = IniRead("log.ini","6","name","")
$check6 = GUICtrlCreateCheckbox ($ini_ckeck6, 20, 125, 120, 20)
$ini_ckeck7 = IniRead("log.ini","7","name","")
$check7 = GUICtrlCreateCheckbox ($ini_ckeck7, 20, 145, 120, 20)
$ini_ckeck8 = IniRead("log.ini","8","name","")
$check8 = GUICtrlCreateCheckbox ($ini_ckeck8, 20, 165, 120, 20)
$ini_ckeck9 = IniRead("log.ini","9","name","")
$check9 = GUICtrlCreateCheckbox ($ini_ckeck9, 20, 185, 120, 20)
$ini_ckeck10 = IniRead("log.ini","10","name","")
$check10 = GUICtrlCreateCheckbox ($ini_ckeck10, 20, 205, 120, 20)


$ini_titre2 = IniRead("titre.ini","2","titre","")
GUICtrlCreateGroup($ini_titre2, 170, 10, 150, 100)
$ini_ckeck11 = IniRead("log.ini","11","name","")
$check11 = GUICtrlCreateCheckbox ($ini_ckeck11, 180, 25, 120, 20)
$ini_ckeck12 = IniRead("log.ini","12","name","")
$check12 = GUICtrlCreateCheckbox ($ini_ckeck12, 180, 45, 120, 20)
$ini_ckeck13 = IniRead("log.ini","13","name","")
$check13 = GUICtrlCreateCheckbox ($ini_ckeck13, 180, 65, 120, 20)
$ini_ckeck14 = IniRead("log.ini","14","name","")
$check14 = GUICtrlCreateCheckbox ($ini_ckeck14, 180, 85, 120, 20)


$ini_titre3 = IniRead("titre.ini","3","titre","")
GUICtrlCreateGroup($ini_titre3, 170, 130, 150, 100)
$ini_ckeck15 = IniRead("log.ini","15","name","")
$check15 = GUICtrlCreateCheckbox ($ini_ckeck15, 180, 145, 120, 20)
$ini_ckeck16 = IniRead("log.ini","16","name","")
$check16 = GUICtrlCreateCheckbox ($ini_ckeck16, 180, 165, 120, 20)
$ini_ckeck17 = IniRead("log.ini","17","name","")
$check17 = GUICtrlCreateCheckbox ($ini_ckeck17, 180, 185, 120, 20)
$ini_ckeck18 = IniRead("log.ini","18","name","")
$check18 = GUICtrlCreateCheckbox  ($ini_ckeck18, 180, 205, 120, 20)


$ini_titre4 = IniRead("titre.ini","4","titre","")
GUICtrlCreateGroup($ini_titre4, 330, 130, 150, 100)
$ini_ckeck19 = IniRead("log.ini","19","name","")
$check19 = GUICtrlCreateCheckbox ($ini_ckeck19, 340, 145, 120, 20)
$ini_ckeck20 = IniRead("log.ini","20","name","")
$check20 = GUICtrlCreateCheckbox ($ini_ckeck20, 340, 165, 120, 20)
$ini_ckeck21 = IniRead("log.ini","21","name","")
$check21 = GUICtrlCreateCheckbox ($ini_ckeck21, 340, 185, 120, 20)
$ini_ckeck22 = IniRead("log.ini","22","name","")
$check22 = GUICtrlCreateCheckbox ($ini_ckeck22, 340, 205, 120, 20)


$ini_titre5 = IniRead("titre.ini","5","titre","")
GUICtrlCreateGroup($ini_titre5, 10, 235, 470, 170)
$ini_ckeck23 = IniRead("log.ini","23","name","")
$check23 = GUICtrlCreateCheckbox ($ini_ckeck23, 20, 250, 120, 20)
$ini_ckeck24 = IniRead("log.ini","24","name","")
$check24 = GUICtrlCreateCheckbox ($ini_ckeck24, 20, 270, 120, 20)
$ini_ckeck25 = IniRead("log.ini","25","name","")
$check25 = GUICtrlCreateCheckbox ($ini_ckeck25, 20, 290, 120, 20)
$ini_ckeck26 = IniRead("log.ini","26","name","")
$check26 = GUICtrlCreateCheckbox ($ini_ckeck26, 20, 310, 120, 20)
$ini_ckeck27 = IniRead("log.ini","27","name","")
$check27 = GUICtrlCreateCheckbox ($ini_ckeck27, 20, 330, 120, 20)
$ini_ckeck28 = IniRead("log.ini","28","name","")
$check28 = GUICtrlCreateCheckbox ($ini_ckeck28, 20, 350, 120, 20)
$ini_ckeck29 = IniRead("log.ini","29","name","")
$check29 = GUICtrlCreateCheckbox ($ini_ckeck29, 20, 370, 120, 20)

$ini_ckeck30 = IniRead("log.ini","30","name","")
$check30 = GUICtrlCreateCheckbox ($ini_ckeck30, 180, 250, 120, 20)
$ini_ckeck31 = IniRead("log.ini","31","name","")
$check31 = GUICtrlCreateCheckbox ($ini_ckeck31, 180, 270, 120, 20)
$ini_ckeck32 = IniRead("log.ini","32","name","")
$check32 = GUICtrlCreateCheckbox ($ini_ckeck32, 180, 290, 120, 20)
$ini_ckeck33 = IniRead("log.ini","33","name","")
$check33 = GUICtrlCreateCheckbox ($ini_ckeck33, 180, 310, 120, 20)
$ini_ckeck34 = IniRead("log.ini","34","name","")
$check34 = GUICtrlCreateCheckbox ($ini_ckeck34, 180, 330, 120, 20)
$ini_ckeck35 = IniRead("log.ini","35","name","")
$check35 = GUICtrlCreateCheckbox ($ini_ckeck35, 180, 350, 120, 20)
$ini_ckeck36 = IniRead("log.ini","36","name","")
$check36 = GUICtrlCreateCheckbox ($ini_ckeck36, 180, 370, 120, 20)

$ini_ckeck37 = IniRead("log.ini","37","name","")
$check37 = GUICtrlCreateCheckbox ($ini_ckeck37, 340, 250, 120, 20)
$ini_ckeck38 = IniRead("log.ini","38","name","")
$check38 = GUICtrlCreateCheckbox ($ini_ckeck38, 340, 270, 120, 20)
$ini_ckeck39 = IniRead("log.ini","39","name","")
$check39 = GUICtrlCreateCheckbox ($ini_ckeck39, 340, 290, 120, 20)
$ini_ckeck40 = IniRead("log.ini","40","name","")
$check40 = GUICtrlCreateCheckbox ($ini_ckeck40, 340, 310, 120, 20)
$ini_ckeck41 = IniRead("log.ini","41","name","")
$check41 = GUICtrlCreateCheckbox ($ini_ckeck41, 340, 330, 120, 20)
$ini_ckeck42 = IniRead("log.ini","42","name","")
$check42 = GUICtrlCreateCheckbox ($ini_ckeck42, 340, 350, 120, 20)

$check60 = GUICtrlCreateLabel("", 200, 450,200,50)
;Bouton

$Button_1 = GUICtrlCreateButton ("Install", 200, 420, 100)


While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit    
       
;--------------------- Bouton install      
Case $msg = $button_1

Dim $Name_file[42]
for $i = 0 to 41
    $Name_file[$i]=IniRead("log.ini",$i+1,"fichier","")
Next
for $i = 1 to 42
        If BitAnd(GuiCtrlRead(Eval("check" & $i)),$GUI_CHECKED) Then
            $fichier = $Name_file[$i-1]
            ;$fichier=GuiCtrlRead(Eval("check" & $i),1)
            ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
           download($fichier)
            ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
            unzip($fichier)
           ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
            install($fichier)
           
           
        EndIf  
Next



EndSelect
Wend



;-------------------------------------------------FONCTION :
;-------------------------Download :
Func download($fichier_param)
local $lpid
if FileExists($fichier_param) then FileDelete($fichier_param)
$proto = IniRead("cfg.ini","dl","protocole","")
$ip = IniRead("cfg.ini","dl","ip","")
$chemin = IniRead("cfg.ini","dl","chemin","")

$url =  $proto & "://" & $ip & $chemin & $fichier_param
$cmd = "wget.exe " & $url
$lpid=run($cmd,'',@SW_hide)
$affichage = "Telechargement de " & $fichier_param
Update_action($affichage,$lpid)
EndFunc



;-------------------------Unzip :
Func unzip($fichier_param)
Local $lpid
;Return
$cmd2 = "7za.exe x -y " & $fichier_param
MsgBox(0,"test0",$fichier_param)
$lpid=runwait($cmd2,'',@SW_hide)
$affichage = "Décompréssion"
Update_action($affichage,$lpid)
EndFunc



;-------------------------Install :
Func install($fichier_param)
Local $lpid
MsgBox(0,"test1",$fichier_param)
$fichier_noext = StringSplit($fichier_param,".")
MsgBox(0,"test2",$fichier_noext[1])
$dossier = @ScriptDir & "\" & $fichier_noext[1]
MsgBox(0,"test3",$dossier)
FileChangeDir($dossier)
$search = FileFindFirstFile("auto*.exe")
$file = FileFindNextFile($search)
MsgBox(0,"test install",$file)
If $file="" Then Return
$lpid=Run($file)
$affichage = "Installation"
Update_action($affichage,$lpid)
EndFunc

Func Update_action($msg_param,$pid_param)
    Dim $progress[4]=["",".","..","..."]
    Local $local_ind=0
    GUICtrlSetData($check60,"")
    While ProcessExists($pid_param)
        GUICtrlSetData($check60,$msg_param&" en cours "&$progress[Mod($local_ind,4)])
        $local_ind+=1
        sleep(500)
    WEnd
    GUICtrlSetData($check60,$msg_param&" terminé(e)")
EndFunc

;-------------------------_ShellEx :
Func _ShellEx($sCmd)
  DllCall("shell32.dll", "long", "ShellExecute", "hwnd", 0, "string", '', "string", $sCmd, "string", '', "string", '', "long", @SW_SHOWNORMAL)
EndFunc  ;==>_ShellEx
 

Re: [..] bug sur logiciel d'install auto

Posté : mar. 29 janv. 2008 20:53
par sylvanie
désolé pour le return, c'était pour neutraliser l'appel lors de mes tests, il ne sers à rien

Re: [..] bug sur logiciel d'install auto

Posté : mar. 29 janv. 2008 21:17
par SurPriseS
C'est la conclusion a laquelle je suis arrivé aussi ^^ mais y'a pas de problème grâce a vous le chti script fonctionne apparament :$ je le test grandeur nature demain :)

J'ai fait 2-3 modif aussi je les posterais demain si tout roule ;)

Merci beaucoup en tout cas :oops:

Re: [..] bug sur logiciel d'install auto

Posté : ven. 01 févr. 2008 10:02
par SurPriseS
Bon voila, j'ai testé une fois pour le moment est tout a fonctionné comme sur des roulettes ^^
Je post donc le script avec un petit rajout :

- Gestion des bat ou exe pour lancer le nouveau script (toujours sous la forme auto*.exe ou auto*.bat)

Code : Tout sélectionner

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.2.4.9
 Author:         ToMs/SurPriseS

 Script Function:
    Menu package auto.

#ce ----------------------------------------------------------------------------

; Script Start


#include <GUIConstants.au3>
#include <Date.au3>
;#NoTrayIcon
AutoItSetOption("TrayAutoPause",0)  
AutoItSetOption("TrayIconDebug",1)
; GUI
GuiCreate("Speed Install - Design By ToMs - Code SurPriseS", 500, 470)
GUISetState (@SW_SHOW)

;picture
GuiCtrlCreatePic("logo.jpg",355,30, 120,40)
GUICtrlCreatelabel (_DateTimeFormat( _NowCalc(),2), 355,80)



;chkbox
$ini_titre1 = IniRead("titre.ini","1","titre","")
GUICtrlCreateGroup($ini_titre1, 10, 10, 150, 220)
$ini_ckeck1 = IniRead("log.ini","1","name","")
$check1 = GUICtrlCreateCheckbox ($ini_ckeck1, 20, 25, 120, 20)
$ini_ckeck2 = IniRead("log.ini","2","name","")
$check2 = GUICtrlCreateCheckbox ($ini_ckeck2, 20, 45, 120, 20)
$ini_ckeck3 = IniRead("log.ini","3","name","")
$check3 = GUICtrlCreateCheckbox ($ini_ckeck3, 20, 65, 120, 20)
$ini_ckeck4 = IniRead("log.ini","4","name","")
$check4 = GUICtrlCreateCheckbox ($ini_ckeck4, 20, 85, 120, 20)
$ini_ckeck5 = IniRead("log.ini","5","name","")
$check5 = GUICtrlCreateCheckbox ($ini_ckeck5, 20, 105, 120, 20)
$ini_ckeck6 = IniRead("log.ini","6","name","")
$check6 = GUICtrlCreateCheckbox ($ini_ckeck6, 20, 125, 120, 20)
$ini_ckeck7 = IniRead("log.ini","7","name","")
$check7 = GUICtrlCreateCheckbox ($ini_ckeck7, 20, 145, 120, 20)
$ini_ckeck8 = IniRead("log.ini","8","name","")
$check8 = GUICtrlCreateCheckbox ($ini_ckeck8, 20, 165, 120, 20)
$ini_ckeck9 = IniRead("log.ini","9","name","")
$check9 = GUICtrlCreateCheckbox ($ini_ckeck9, 20, 185, 120, 20)
$ini_ckeck10 = IniRead("log.ini","10","name","")
$check10 = GUICtrlCreateCheckbox ($ini_ckeck10, 20, 205, 120, 20)


$ini_titre2 = IniRead("titre.ini","2","titre","")
GUICtrlCreateGroup($ini_titre2, 170, 10, 150, 100)
$ini_ckeck11 = IniRead("log.ini","11","name","")
$check11 = GUICtrlCreateCheckbox ($ini_ckeck11, 180, 25, 120, 20)
$ini_ckeck12 = IniRead("log.ini","12","name","")
$check12 = GUICtrlCreateCheckbox ($ini_ckeck12, 180, 45, 120, 20)
$ini_ckeck13 = IniRead("log.ini","13","name","")
$check13 = GUICtrlCreateCheckbox ($ini_ckeck13, 180, 65, 120, 20)
$ini_ckeck14 = IniRead("log.ini","14","name","")
$check14 = GUICtrlCreateCheckbox ($ini_ckeck14, 180, 85, 120, 20)


$ini_titre3 = IniRead("titre.ini","3","titre","")
GUICtrlCreateGroup($ini_titre3, 170, 130, 150, 100)
$ini_ckeck15 = IniRead("log.ini","15","name","")
$check15 = GUICtrlCreateCheckbox ($ini_ckeck15, 180, 145, 120, 20)
$ini_ckeck16 = IniRead("log.ini","16","name","")
$check16 = GUICtrlCreateCheckbox ($ini_ckeck16, 180, 165, 120, 20)
$ini_ckeck17 = IniRead("log.ini","17","name","")
$check17 = GUICtrlCreateCheckbox ($ini_ckeck17, 180, 185, 120, 20)
$ini_ckeck18 = IniRead("log.ini","18","name","")
$check18 = GUICtrlCreateCheckbox  ($ini_ckeck18, 180, 205, 120, 20)


$ini_titre4 = IniRead("titre.ini","4","titre","")
GUICtrlCreateGroup($ini_titre4, 330, 130, 150, 100)
$ini_ckeck19 = IniRead("log.ini","19","name","")
$check19 = GUICtrlCreateCheckbox ($ini_ckeck19, 340, 145, 120, 20)
$ini_ckeck20 = IniRead("log.ini","20","name","")
$check20 = GUICtrlCreateCheckbox ($ini_ckeck20, 340, 165, 120, 20)
$ini_ckeck21 = IniRead("log.ini","21","name","")
$check21 = GUICtrlCreateCheckbox ($ini_ckeck21, 340, 185, 120, 20)
$ini_ckeck22 = IniRead("log.ini","22","name","")
$check22 = GUICtrlCreateCheckbox ($ini_ckeck22, 340, 205, 120, 20)


$ini_titre5 = IniRead("titre.ini","5","titre","")
GUICtrlCreateGroup($ini_titre5, 10, 235, 470, 170)
$ini_ckeck23 = IniRead("log.ini","23","name","")
$check23 = GUICtrlCreateCheckbox ($ini_ckeck23, 20, 250, 120, 20)
$ini_ckeck24 = IniRead("log.ini","24","name","")
$check24 = GUICtrlCreateCheckbox ($ini_ckeck24, 20, 270, 120, 20)
$ini_ckeck25 = IniRead("log.ini","25","name","")
$check25 = GUICtrlCreateCheckbox ($ini_ckeck25, 20, 290, 120, 20)
$ini_ckeck26 = IniRead("log.ini","26","name","")
$check26 = GUICtrlCreateCheckbox ($ini_ckeck26, 20, 310, 120, 20)
$ini_ckeck27 = IniRead("log.ini","27","name","")
$check27 = GUICtrlCreateCheckbox ($ini_ckeck27, 20, 330, 120, 20)
$ini_ckeck28 = IniRead("log.ini","28","name","")
$check28 = GUICtrlCreateCheckbox ($ini_ckeck28, 20, 350, 120, 20)
$ini_ckeck29 = IniRead("log.ini","29","name","")
$check29 = GUICtrlCreateCheckbox ($ini_ckeck29, 20, 370, 120, 20)

$ini_ckeck30 = IniRead("log.ini","30","name","")
$check30 = GUICtrlCreateCheckbox ($ini_ckeck30, 180, 250, 120, 20)
$ini_ckeck31 = IniRead("log.ini","31","name","")
$check31 = GUICtrlCreateCheckbox ($ini_ckeck31, 180, 270, 120, 20)
$ini_ckeck32 = IniRead("log.ini","32","name","")
$check32 = GUICtrlCreateCheckbox ($ini_ckeck32, 180, 290, 120, 20)
$ini_ckeck33 = IniRead("log.ini","33","name","")
$check33 = GUICtrlCreateCheckbox ($ini_ckeck33, 180, 310, 120, 20)
$ini_ckeck34 = IniRead("log.ini","34","name","")
$check34 = GUICtrlCreateCheckbox ($ini_ckeck34, 180, 330, 120, 20)
$ini_ckeck35 = IniRead("log.ini","35","name","")
$check35 = GUICtrlCreateCheckbox ($ini_ckeck35, 180, 350, 120, 20)
$ini_ckeck36 = IniRead("log.ini","36","name","")
$check36 = GUICtrlCreateCheckbox ($ini_ckeck36, 180, 370, 120, 20)

$ini_ckeck37 = IniRead("log.ini","37","name","")
$check37 = GUICtrlCreateCheckbox ($ini_ckeck37, 340, 250, 120, 20)
$ini_ckeck38 = IniRead("log.ini","38","name","")
$check38 = GUICtrlCreateCheckbox ($ini_ckeck38, 340, 270, 120, 20)
$ini_ckeck39 = IniRead("log.ini","39","name","")
$check39 = GUICtrlCreateCheckbox ($ini_ckeck39, 340, 290, 120, 20)
$ini_ckeck40 = IniRead("log.ini","40","name","")
$check40 = GUICtrlCreateCheckbox ($ini_ckeck40, 340, 310, 120, 20)
$ini_ckeck41 = IniRead("log.ini","41","name","")
$check41 = GUICtrlCreateCheckbox ($ini_ckeck41, 340, 330, 120, 20)
$ini_ckeck42 = IniRead("log.ini","42","name","")
$check42 = GUICtrlCreateCheckbox ($ini_ckeck42, 340, 350, 120, 20)

$check60 = GUICtrlCreateLabel("", 200, 450,200,50)
;Bouton

$Button_1 = GUICtrlCreateButton ("Install", 200, 420, 100)


While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit    
       
;--------------------- Bouton install      
Case $msg = $button_1

Dim $Name_file[42]
for $i = 0 to 41
    $Name_file[$i]=IniRead("log.ini",$i+1,"fichier","")
Next
for $i = 1 to 42
        If BitAnd(GuiCtrlRead(Eval("check" & $i)),$GUI_CHECKED) Then
            $fichier = $Name_file[$i-1]
            ;$fichier=GuiCtrlRead(Eval("check" & $i),1)
            ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
           download($fichier)
            ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
            unzip($fichier)
           ConsoleWrite("iniread fichier "&$i&" "&$fichier&@CRLF)
            install($fichier)
               
        EndIf  
Next



EndSelect
Wend



;-------------------------------------------------FONCTION :
;-------------------------Download :
Func download($fichier_param)
local $lpid
if FileExists($fichier_param) then FileDelete($fichier_param)
$proto = IniRead("cfg.ini","dl","protocole","")
$ip = IniRead("cfg.ini","dl","ip","")
$chemin = IniRead("cfg.ini","dl","chemin","")

$url =  $proto & "://" & $ip & $chemin & $fichier_param
$cmd = "wget.exe " & $url
$lpid=run($cmd,'',@SW_hide)
$affichage = "Telechargement de " & $fichier_param
Update_action($affichage,$lpid)
EndFunc



;-------------------------Unzip :
Func unzip($fichier_param)
Local $lpid
$cmd2 = "7za.exe x -y " & $fichier_param
$lpid=runwait($cmd2,'',@SW_hide)
$affichage = "Décompréssion"
Update_action($affichage,$lpid)
EndFunc



;-------------------------Install :
Func install($fichier_param)
Local $lpid
$fichier_noext = StringSplit($fichier_param,".")
$dossier = @ScriptDir & "\" & $fichier_noext[1]
FileChangeDir($dossier)
$search = FileFindFirstFile("auto*.exe")
$file = FileFindNextFile($search)

if $file = "" Then
    $search = FileFindFirstFile("auto*.bat")
    $file = FileFindNextFile($search)
endif

If $file="" Then Return
$lpid=Run($file)
$affichage = "Installation"
Update_action($affichage,$lpid)
$dossier = @ScriptDir
FileChangeDir($dossier)
EndFunc

Func Update_action($msg_param,$pid_param)
    Dim $progress[4]=["",".","..","..."]
    Local $local_ind=0
    GUICtrlSetData($check60,"")
    While ProcessExists($pid_param)
        GUICtrlSetData($check60,$msg_param&" en cours "&$progress[Mod($local_ind,4)])
        $local_ind+=1
        sleep(500)
    WEnd
    GUICtrlSetData($check60,$msg_param&" terminé(e)")
EndFunc

;-------------------------_ShellEx :
Func _ShellEx($sCmd)
  DllCall("shell32.dll", "long", "ShellExecute", "hwnd", 0, "string", '', "string", $sCmd, "string", '', "string", '', "long", @SW_SHOWNORMAL)
EndFunc  ;==>_ShellEx