hello tout le monde
i need you
je cherche a faire une progressbar avec un filecopy
voici mon script
► Afficher le texte
#include <GUIConstants.au3>
#include <GUIConstantsEx.au3>
$fichiersource = "\\192.168.204.20\0_BRInfo\WEBSERVICES\webservice\soft\webservices.exe"
$fichier= "C:\webservice\soft\webservices.exe"
if FileGetTime($fichiersource,0,1) <> FileGetTime($fichier,0,1) Then
_barredeprogression()
Else
ShellExecute ($fichier)
EndIf
;==================================================================
; BARRE DE PROGRESSION
Func _barredeprogression()
$fichiersource = $fichiersource ;<---------------------------------- modifier la source ici
$fichier = $fichier;<---------------------------------- modifier la destination ici
$guidl = GUICreate("Telechargement", 300, 100, 387, 31)
$Progress = GUICtrlCreateProgress(25, 40, 250, 20)
GUISetState(@SW_SHOW)
$Input1 = GUICtrlCreateLabel("Veuillez patienter le fichier se télécharge, merci", 5, 10, 250, 20)
;$Input2 = GUICtrlCreateEdit($dest, 5, 40, 250, 20)
$label= GUICtrlCreateLabel("",125,70,50,20)
$poidssource = FileGetSize ($fichiersource)
$poidsdest = FileGetSize ($fichier)
$Download = FileCopy ($fichiersource, $fichier) ;Telecharge
While $poidsdest <> $poidssource
$poidsdest = FileGetSize ($fichier)
For $i=(($poidsdest/$poidssource)*100) to 100
$pourcent = ($poidsdest/$poidssource)*100
GUICtrlSetData($progress,$i)
GUICtrlSetData($label,$pourcent&"%")
Next
WEnd
ShellExecute ($fichier)
GUIDelete($guidl)
EndFunc
;==================================================================
Probleme 1 : La barre passe directement de 0 (au debut) a 100 ( a la fin du dl ) sans intermediaire
je pense que le probleme vient du fait que le poid du fichier de destination avec filecopy est directement le poid final
il n'y a pas une autre commande tel inetgetsize mais pour filecopy ?????
Probleme 2 : lié au premier je pense , mon label passe aussi de 0 a 100 %
mikell si tu nous regarde (
tu as vu j'ai bien progressé
)
merci d'avance a tous