Afin de calculer le temps de redémarrage de Windows, nous allons créer un script VBScript (Visual Basic Scripting Edition) développé par sebdraluorg. Mais avant de commencer la création du script en lui-même, penchons nous tout d?abord sur son fonctionnement.
Fonctionnement du script :
Le script écrit une valeur dans le registre (HKCU\Software\Microsoft\Current Version\run) afin qu?il puisse se relancer au démarrage. Ensuite, une autre valeur contenant l?heure est inscrite dans la base de registre puis le redémarrage est lancé. En redémarrant, le script enregistre l'heure dans une variable puis vérifie si la première valeur contenant l'heure existe. Si oui, il suffit alors de comparer les deux temps afin d?obtenir le temps de démarrage. Enfin, les deux clés ajoutées dans le registre sont alors supprimées (la clé run et la clé où est stockée l'heure).
voici le script :
Option Explicit
On Error Resume Next
Dim Wsh
Dim Time1
Dim Time2
Dim Result
Dim Bureau
Dim PathFile
Dim OkC
Set Wsh = CreateObject("WScript.Shell")
Bureau = Wsh.SpecialFolders("Desktop")
PathFile = """" & Bureau & "\Restart-Time.vbs" & """"
Result = wsh.RegRead("HKEY_CURRENT_USER\Software\RestartTime\Times")
if Result = "" then
OkC = Msgbox ("Pour chronométrer le redémarrage, veuillez fermer toutes les applications en cours et cliquer sur OK.",vbOKCancel,"Restart-Time")
If OkC = vbcancel then WScript.Quit
Wsh.RegWrite "HKEY_CURRENT_USER\Software\RestartTime\Times", Time, "REG_SZ"
Wsh.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\RestartTime", PathFile, "REG_SZ"
Wsh.Run "cmd /c Shutdown -r -t 00", false, 0
WScript.Quit
else
Wsh.RegDelete "HKEY_CURRENT_USER\Software\RestartTime\Times"
Wsh.RegDelete "HKEY_CURRENT_USER\Software\RestartTime\"
Wsh.RegDelete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\RestartTime"
MsgBox "PC redémarré en " & DateDiff("s",Result,Time) & " secondes", VbInformation, "Restart-Time"
end if
wscript.Quit
http://www.zebulon.fr/astuces/tip197/Ca ... rrage.html