Page 1 sur 1

Clean PC

Posté : sam. 20 août 2016 09:21
par liberodark
Bonjour,

Je souhaite automatiser certains taches multiples via un script pour simplifier un nettoyage.
En gros le script devrait lancer rkill puis JRT puis adwcleaner.
Les exécutions ce font bien mais il ne lance pas les taches convenablement.
Voici le code :
;Application nécéssitant les droit d'admin
#RequireAdmin

#include <WinApi.au3>
#include <GUIConstantsEx.au3>
#include <Constants.au3>
#include <ProgressConstants.au3>

;Lancement du prog d'installation
ShellExecute (@ScriptDir & "\clean\rkill.exe")

ProcessWaitClose("rkill.exe")

ShellExecute (@ScriptDir & "\clean\JRT.exe")
Send("{ENTER}")

ProcessWaitClose("jrt.exe")

ShellExecute (@ScriptDir & "\clean\adwcleaner_6.000.exe")

;Récupération du "handler" de la fenêtre
$Hndl = WinGetHandle("- AdwCleaner - Conditions d'utilisation -")

;Fournir le focus à Adwcleaner
WinActivate($Hndl)

;Attente de la fenêtre principal du programme
WinWaitActive ("- AdwCleaner - v6.000 - Toolslib -")

;Lancer la fonction de scan
Send("{TAB}")
Send("{ENTER}")

;Fin du programme
Exit
Si vous avez une idée comment je peut lancer JRT automatiquement pour un scan ?
Et de même pour adwcleaner.

Cordialement

Re: Clean PC

Posté : sam. 20 août 2016 17:31
par franco
Salut.
Si vous avez une idée comment je peut lancer JRT automatiquement pour un scan ?
Et de même pour adwcleaner.
Parlons d'adwcleaner...

Tu as mis ceci :
ShellExecute (@ScriptDir & "\clean\adwcleaner_6.000.exe")

Puis ceci :
WinWaitActive ("- AdwCleaner - v6.000 - Toolslib -")

En gros, même si tu réussis à débuter le scan, tu vas constamment (ou presque) modifier ton script, car Xplode bosse continuellement dessus, donc la version change souvent.


Sinon...
Dans Scite, il y a un outil intéressant : AU3Info.

Utilise-le pour faire un appui sur le bouton permettant le scan.


PS : pour ne pas te prendre la tête avec les versions qui changent, il serait peut-être efficace de le télécharger avant, mais sous le nom adwcleaner.


Tu cherches à automatiser, OK, mais le principal défaut, c'est la version qui change.



Pour le titre de la fenêtre, ce n'est pas un souci, il existe une fonction permettant de lister les fenêtre.
Avec une condition, tu peux déclarer le titre de la fenêtre d'adwcleaner dans une variable.


Je vais voir si je peux en faire quelque chose.


++

Re: Clean PC

Posté : lun. 22 août 2016 12:11
par liberodark
Bonjour,

J'ai beaucoup avancé sur mon petit logiciel ^^
Mais j'aimerais savoir comment je peut lui demander d'appuyer sur une touche clavier pour lancer un application.

Voici mon échec :
ShellExecute (@ScriptDir & "\clean\JRT.exe")
Send("{ENTER}")
Il doit manquer quelque chose mais je ne vois pas encore ce que c'est.

Cordialement

Re: Clean PC

Posté : lun. 22 août 2016 18:03
par liberodark
Voici mon code :
Si vous avez des idées pour l'améliorer !
Cordialement
#RequireAdmin
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Outfile=C:\Users\bill6\OneDrive\Documents\GitHub\Clean-My-PC\Clean My PC.exe
#AutoIt3Wrapper_Res_requestedExecutionLevel=requireAdministrator
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.14.2
 Author:         liberodark

 Script Function:
   Clean PC.

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

#include <WinApi.au3>
#include <GuiConstants.au3>
#include <GUIConstantsEx.au3>
#include <File.au3>
#include <FileConstants.au3>
#include <7zaExe.au3>
#include <InetConstants.au3>
#include <MsgBoxConstants.au3>
#include <WinAPIFiles.au3>

; ==================
; save & install hosts

If MsgBox(4, "Protect Hosts", "You want to protect your hosts ?") = 6 Then
Global $sHostsPath = "C:\Windows\System32\drivers\etc\hosts"
If Not FileExists($sHostsPath) Then Exit MsgBox(48, "error", "hosts absent")
Global $savedHosts = "C:\Windows\System32\drivers\etc\hosts.bak"
If Not FileExists($savedHosts) Then FileCopy($sHostsPath, $savedHosts) ; backup in launch
Global $backup = "C:\Windows\System32\drivers\etc\hosts.bak"
FileInstall ("Clean\hosts", "C:\Windows\System32\drivers\etc\hosts", 1)
MsgBox(64,"Success", "New hosts is installed")
Endif

; ==================
;Select your Program
If MsgBox(4, "Remove Process", "You want to launch RKill ?") = 6 Then
ShellExecute (@ScriptDir & "\clean\rkill.exe")
ProcessWaitClose("rkill.exe")
Endif

If MsgBox(4, "Remove Process", "You want to launch JRT ?") = 6 Then
ShellExecute (@ScriptDir & "\clean\JRT.exe")
ProcessWaitClose("jrt.exe")
Endif

If MsgBox(4, "Remove Malware & Adware", "You want to scan for remove Malware and Adware from your PC ?") = 6 Then
ShellExecute (@ScriptDir & "\clean\adwcleaner.exe")

ProcessWaitClose("adwcleaner.exe")

ShellExecute (@ScriptDir & "\clean\ZHPCleaner.exe")

ProcessWaitClose("ZHPCleaner.exe")

ShellExecute (@ScriptDir & "\clean\RogueKiller.exe")

ProcessWaitClose("RogueKiller.exe")
Endif


If MsgBox(4, "Install Malwarebytes", "You want to install Malwarebytes ?") = 6 Then
ShellExecuteWait("clean\mbam-setup-2.2.1.1043.exe", "/verysilent /norestart", @ScriptDir)
EndIf

Local $sMBAM1 = "C:\Program Files (x86)\Malwarebytes Anti-Malware\mbam.exe"
Local $sMBAM2 = "C:\Program Files\Malwarebytes Anti-Malware\mbam.exe"
If (not FileExists($sMBAM1)) Then
   ShellExecute ($sMBAM2)
   Endif

If (not FileExists($sMBAM2)) Then
   ShellExecute ($sMBAM1)
   EndIf

If (not FileExists($sMBAM1)) AND (not FileExists($sMBAM2)) Then
   MsgBox(64,"Error Malwarebytes", "Download & Install Malwarebytes")
   ShellExecute ("https://malwarebytes.com/")
   ProcessWaitClose("mbam.exe")
Endif

If MsgBox(4, "Scan for Virus", "You want to scan for virus ?") = 6 Then
ShellExecute (@ScriptDir & "\clean\ClamWinPortable\ClamWinPortable.exe")
ProcessWaitClose("ClamWinPortable.exe")
Endif


; ==================
; Clean Install
If MsgBox(4, "Clean Install", "You want to clean install ?") = 6 Then
ShellExecuteWait("clean\mbam-clean-2.3.0.1001.exe", "/silentnoreboot", @ScriptDir)
DirRemove("C:/AdwCleaner/", 1)
DirRemove("Clean", 1)
Endif

Exit