Bonjour à tous
Parfois Antivir ( je ne sais pas avec les autres 'surveillants' !)
trouve des 'bizarreries dans System Volume Information.
Voici une proposition de script pour y remédier.
(voir les notes à la fin)
► Afficher le texte
Code : Tout sélectionner
;==========================================================
;
; AutoIt Version: 3.0
; Language: French
; Platform: Windows XP + Sp2
; Author: Pierre Berjon
;
; Script Function:
; Nettoyage System Volume Information
;
#include <Date.au3>
Const $_ms = 400 ; ajustement des pauses
; Prompt the user to run the script - use a Yes/No prompt (4 - see help file)
$answer = MsgBox(4, "Sécurité", "Nettoyage de System Volume Information et" & Chr(13) & _
"création d'un nouveau point de restauration ?")
If $answer = 7 Then ; "Non" cliqué (7)
Exit ; abandon du process ! on sort...
EndIf
$boucle = 1
While $boucle = 1
$_texte = InputBox("Description du point de restauration", _
"(La date et l'heure sont automatiquement ajoutées)","","",276,181)
If @error = 1 Then
Exit ; abandon du process ! on sort...
EndIf
if $_texte = "" then ; pas de description entrée ! on attend et on tourne en rond...
$boucle = 1
Else
$boucle = 0
EndIf
WEnd
;Exit
; ATTENTION !!!
; ces deux opérations ont pour but de supprimer tous les points de restauration antérieurs !
; mais aussi de vider les fichiers cachés System Volume Information de tous les disques durs du PC
; et donc d'éradiquer tout ce qui est indésirable à l'intérieur (virus, trojan, etc...)
Run("RunDLL32.exe shell32.dll,Control_RunDLL sysdm.cpl,,4") ; ouvre la fenêtre 'Propriétés système'
WinWaitActive("Propriétés système")
Sleep($_ms)
ControlCommand("Propriétés système","","[CLASS:Button; INSTANCE:1]","Check","")
; -DESACTIVER- la Restauration du système sur tous les lecteurs
Sleep($_ms)
ControlClick("Propriétés système", "", "[CLASS:Button; INSTANCE:6]") ; bouton 'Appliquer'
Sleep($_ms)
ControlClick("Restauration du système", "", "[CLASS:Button; INSTANCE:1]") ; bouton 'Oui'
Sleep($_ms)
ControlCommand("Propriétés système","","[CLASS:Button; INSTANCE:1]","UnCheck","")
; -Ré-ACTIVER- la Restauration du système sur tous les lecteurs
Sleep($_ms)
ControlClick("Propriétés système", "", "[CLASS:Button; INSTANCE:6]") ; bouton 'Appliquer'
Sleep($_ms)
ControlClick("Propriétés système", "", "[CLASS:Button; INSTANCE:4]") ; bouton 'OK'
WinWaitClose("Propriétés système")
Exit
; Maintenant on crée un point de restauration propre !
; ce qui va ré-écrire les fichiers System Volume Information de tous les disques durs
; dans la configuration théoriquement sans 'malveillants' !
Run("C:\WINDOWS\system32\Restore\rstrui.exe ","") ; ouvre la fenêtre 'Restauration du système'
WinWaitActive("Restauration du système")
Sleep($_ms)
Send("!e") ; Alt+e pour 'Créer un point de restauration'
Sleep($_ms)
Send("!s") ; Alt+s pour 'Suivant'
Sleep($_ms)
Send($_texte); met la description définie dans le champ approprié !
Sleep($_ms)
Send("!c") ; Alt+c pour 'Créer'
Sleep(2000) ; (*) à conserver pour laisser au PC le temps de bosser !!!
Send("!f") ; Alt+f pour 'Fermer'
Sleep($_ms)
; C'est fini !
;==========================================================
Notes :
Ce script se veut pédagogique donc vous pourrez virer les commentaires.
La variable $_ms (comme millisecondes! ) est juste là pour faire des pauses
et voir ce qui se passe en temps réel. Sa durée peut être diminuée ou bien
supprimer tous les Sleep($_ms) sauf un (*)! A voir...
Les fenêtres pourraient peut-être ouvertes en 'Hidden', A voir...
Ce script fonctionne sous Windows XP Sp2 français.
Il pourrait sûrement être adapté pour d'autres langages ou d'autres OS, A voir...
Pour en savoir plus au sujet de : commandes RunDLL32.exe ....,
un liens sûr et actif au 18 janvier 2008.
http://www.apiguide.net/depannage/PC/wi ... OS_512.htm
(si pas accessible, je peux envoyer le fichier)
et puis ma base de travail ( ou bien idée de départ) :
http://www.commentcamarche.net/faq/suje ... nformation
Merci à Kristopher !
Enfin, toutes les suggestions ou critiques sont les bienvenues !
A vous lire...
Pierre