Page 1 sur 1

[Ex] Automatiser ATF-Cleaner

Posté : ven. 05 sept. 2008 14:32
par doogy
Bonjour,
ci-joint un script qui permet d'automatiser l'exécution de ATF-Cleaner

Code : Tout sélectionner

;   +----------------------------+
;   ! Nettoyage avec ATF-Cleaner !
;   +----------------------------+
; Le chemin d'accès dans "Run" est fonction du répertoire de votre programme

Run("C:\Program Files\ATF-Cleaner\ATF-Cleaner.exe") 

; Attendre ouverture fenêtre principale
WinWaitActive("ATF Cleaner - Main")

; On coche l'option "Select All"
controlclick("ATF Cleaner - Main","","Select All") 
sleep(200)

; Cliquer sur le bouton Empty Selected 
controlclick("ATF Cleaner - Main","","Empty Selected") 
sleep(200)
 

; Attention:
;-----------
; Selon le lancement 2 fenêtres peuvent se présenter:
; "Done ATF-Cleaner...." et " No files were removed"
; La fenêtre n'étant pas connue nous allons la tester
$Traiter=""
Do
     ; Si c'est la fenêtre "No files ......"
     If WinWait("ATF Cleaner","No files were removed.",1) Then
           ControlClick("ATF Cleaner","No files were removed.","OK")
       $Traiter="OK"
        EndIf
 
     ; si c'est la fenêtre "Done....."
     If WinWait("Done","",1) Then
       ControlClick("Done","","OK")
       $Traiter="OK"
    EndIf
Until $Traiter ="OK"
;
; +-------------------------+
; ! Traitement pour FireFox !
; +-------------------------+
; Pour les possesseurs de Firefox, il faut traiter l'option de nettoyage
; Pour cliquer sur "Firefox" on localise la position par rapport à la taille de la fenêtre
$Taille = WinGetPos("ATF Cleaner - Main","")
$PosX = $Taille[0] + 60
$PosY = $Taille[1] + 35
MouseClick("Left", $PosX, $PosY)

; Si l'option est grisée, il n'y a pas FireFox.
; On va attendre
If WinWait("ATF Cleaner - Firefox","", 3) Then
   ControlClick("ATF Cleaner - Firefox","","Select All") 
   Sleep(200)
   WinWait("ATF Cleaner - Delete Passwords","")
   ControlClick("ATF Cleaner - Delete Passwords","","Button1") ; Button1=Oui Button2=Non
   WinWait("ATF Cleaner - Firefox")
   ControlClick("ATF Cleaner - Firefox","","Empty Selected") ; Empty Selected.
   WinWait("ATF Cleaner - Delete Passwords","")
   ControlClick("ATF Cleaner - Delete Passwords","","Button1") ; Button1=Oui Button2=Non
   ; Voir les précautions dans Attention ci dessus
   $Traiter = ""
   Do 
        ; Fenetre "No files were removed"
    If WinWait("ATF Cleaner","No files were removed.",1) Then 
       ControlClick("ATF Cleaner","No files were removed.","OK")
       $Traiter="OK"
        EndIf
                        
    ; Fenêtre "Done"
    If WinWait("Done","",1) Then    
       ControlClick("Done","","OK")
       $Traiter="OK"
    EndIf
   Until $Traiter="OK"
EndIf
; Fermeture de ATF-Cleaner
WinClose("ATF Cleaner")

Re: [Ex] Automatiser ATF-Cleaner

Posté : ven. 05 sept. 2008 20:24
par timmalos
Très bon script qui de plus est très bien commenté.

[..]Re: [Ex] Automatiser ATF-Cleaner

Posté : sam. 04 oct. 2008 09:52
par Dan
Bonjour,
Tout d'abord, merci pour ce script.
J'ai juste modifié 2 petites choses pour que les mots de passe dans Firefox ne soient pas supprimés. Comme précisé dans le script, il suffit juste de mettre "2" au lieu de "1" dans la ligne suivante :

Code : Tout sélectionner

ControlClick("ATF Cleaner - Delete Passwords", "", "Button2") ; Button1=Oui Button2=Non
Ce changement provoquait une interruption du script dans certains cas. C'est à priori résolu en supprimant une ligne qui semblait redondante dans le code.
La 2ème modif concerne l'envoi d'un "Alt f" pour ouvrir le menu concernant Firefox au lieu de passer par des mouvements de souris.
Cette commande est plus rapide et plus efficace dans le cas ou l'on touche la souris au moment où elle se dirige sur le menu (fonctionne bien que le f de Firefox ne soit pas souligné dans le menu).
Sinon, perso, j'ajoute une commande pour lancer JkDefrag pour défragmenter automatiquement le disque dur à la fin de ce sricpt (il faut avoir les droits administrateur sur le poste, sinon, RunAs...).

Voici le script :
► Afficher le texte
Dan