[autoIt]CtrlState, if then, Return Code...

Fermé
Big-G Messages postés 1 Date d'inscription jeudi 8 décembre 2005 Statut Membre Dernière intervention 8 décembre 2005 - 8 déc. 2005 à 21:11
 EnvyMe - 21 déc. 2009 à 23:23
Tout d'abord Bonjour à tous,

Voici mon premier post, j'irais de suite vérifier qu'il faille ou pas se présenter dans un autre Topic.

J4ai parcouru le forum à l'aide de la fonction "rechercher", mais n'ai rien trouvé.
Je vous soumet donc ma requete :

Dans le cadre d'un script AutoIt ayant pour but la sauvegarde des données avant formatage, je souhaiterais, par le biais de checkbox, selectionner les dossiers les plus courant à sauvegarder.
A savoir "Mes Docs, Favoris, Dossiers mail, etc..."
Jusque maintenant j'ai paramétré le Gui pour qu'il ressemble à mon idée. J'ai preparé une fonction qui affiche dans un "Label" la taille des dossiers selectionnés.
Mon problème :
Lorsque je selectionne le dossier à sauvegarder, la zone "Label" affiche bien la taille du dossier, mais si ensuite je decoche la "checkBox" la taille ne disparait pas.

D'autre part, je cherche toute autre source d'information en francais sur AuotIt (liens, Tuto, Doc, etc...). Ainsi qu'une personne qui souhaiterais m'epauler sur mes debut dans ce langage, par le biais d'un "messenger" quelconque.

Je vous joint le debut du programme :


Global Const $ES_READONLY = 2048
Global Const $WS_BORDER = 0x00800000
Global Const $GUI_EVENT_CLOSE = -3

;~ Vraiable's place
$UserDocPath = @MyDocumentsDir
$UserFavPath = @FavoritesDir
$DirFavSize = DirGetSize($UserFavPath)
$DestDir="_Archives_\" & @COMPUTERNAME & " ("& @USERNAME &")\"
$DestDirDoc=$DestDir & "Doc\"
$DestDirFav=$DestDir & "Fav\"
$DestDirWall=$DestDir & "Wall\"
$FoxmailPath = "C:\Program Files\Foxmail\"
$FoxmailExists = FileExists($FoxmailPath)
;~ End Variable


;~ Gui
GuiCreate("KwikCopy 1.1a -·=椺²°`¯ By Big-G ¯`°²º¤æ=·-", 400, 300)
GuiSetState()

;~ Combo's place
$combo = GUICtrlCreateCombo("", 20, 110, 120, 70)
$SEL = GUICtrlSetData($combo,"Sauvegarde|Restauration", "Sauvegarde")

;~ Group's place
GUICtrlCreateGroup("Selection :", 20, 153, 170, 127)
GUICtrlCreateGroup("Informations :", 210, 153, 100, 127)

;~ CheckBox's place
$doc = GUICtrlCreateCheckbox ("Mes documents", 30, 172)
$fav = GUICtrlCreateCheckbox ("Mes Favoris", 30, 192)
$wallpaper = GUICtrlCreateCheckbox ("Fond Ecran", 30, 212)
$foxmail = GUICtrlCreateCheckbox ("Foxmail", 30, 232)
$tout = GUICtrlCreateCheckbox ("Tout Selectionner", 30, 252)

;~ GO Button
$GO = GUICtrlCreateButton("GO !",150,110,40, 40)

While 1
$msg = GuiGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop

Case $msg = $doc
$DirDocSize = DirGetSize($UserDocPath)
$EditDoc = GUICtrlCreateLabel (round($DirDocSize / 1024 / 1024, 1) & " Mo" & @CRLF, 220, 172, 80, 20)

Case $msg = $fav
$DirFavSize = DirGetSize($UserFavPath)
$EditFav = GUICtrlCreateLabel (round($DirFavSize / 1024 / 1024, 1) & " Mo" & @CRLF, 220, 192, 80, 20)

Case $msg = $wallpaper
Local $RegDesktop= "HKEY_CURRENT_USER\Control Panel\Desktop"
$SourceWall = RegRead($RegDesktop, "Wallpaper")
$WallSize = FileGetSize($SourceWall)
GUICtrlCreateLabel(round($WallSize / 1024 / 1024, 1) & " Mo" & @CRLF, 220, 212, 80, 20)

Case $msg = $foxmail
If $FoxmailExists = 0 Then
MsgBox(48, "Informations", "Pas de dossier Foxmail detecte !")
ElseIf $FoxmailExists <> 0 Then
$FoxmailSize = DirGetSize($FoxmailPath)
GUICtrlCreateLabel(round($FoxmailSize / 1024 / 1024, 1) & " Mo" & @CRLF, 220, 232, 80, 20)
EndIf

EndSelect
;~ Case $msg = $foxmail
WEnd

;~ Function's place
;~ Func _saveWall()
;~ FileCopy($SourceWall,$DestDirWall)
;~ EndFunc
;~ End Function

***************************************************

Beaucoup de requetes pour un premier post j'en suis conscient et je vous remercie d'avance pour vos réponses. ;o)
A voir également:

3 réponses

Laisse beton, personne te repondra car ce forum est mal géré !
0
Salut,

je charche a faire la meme chose ou en es tu de ton script ?


cdlt
0
Je l'ai finalisé, il marche impec !
Tu peux le dl à cette adresse : http://wassing.free.fr/KwikCopy_2.3a.exe

;o)
0
Bonsoir a Tous,

apres avoir parcouru beaucoup de forum, j'ai trouvé enfin sur ce que je cherchais.
Seulement voila, j'aurai besoin d'un code source similaire a l'exe donné par Big-g.

si vous pourriez m'aider, j'attends avec beaucoup d'impatient vos réponses.

Bonne soirée
0