Je souhaite créer un script me permettant de lancer une défragmentation toutes les semaines... pouvez-vous m'aider svp ?
Code : Tout sélectionner
$Ordinateur = @ComputerName
$LogPath = "\\serveur03\patchs\Report\Defrag\" & $Ordinateur & ".txt"
RunAs ( "pseudoadmin", @ComputerName, "password", "mmc.exe dfrg.msc" , @SystemDir )
;Run ("mmc.exe dfrg.msc",@SystemDir)
WinWaitActive ("Défragmenteur de disque", "Défragmenter")
Send ("{TAB}")
Send ("{ENTER}")
WinWaitActive ("Défragmenteur de disque", "La défragmentation est terminée pour : (C:)")
Send ("{ENTER}")
WinWaitActive ("Rapport de défragmentation")
Send ("{ENTER}")
WinClose ("Défragmenteur de disque")
_FileWriteLog ( $LogPath, $Ordinateur & " a défragmenté son pc." )
#cs
SCRIPT FICHIER Log
#ce
Func _FileWriteLog($sLogPath, $sLogMsg)
;==============================================
; Local Constant/Variable Declaration Section
;==============================================
Local $sDateNow
Local $sTimeNow
Local $sMsg
Local $hOpenFile
Local $hWriteFile
$sDateNow = @YEAR & "-" & @MON & "-" & @MDAY
$sTimeNow = @HOUR & ":" & @MIN & ":" & @SEC
$sMsg = $sDateNow & " " & $sTimeNow & " : " & $sLogMsg
$hOpenFile = FileOpen($sLogPath, 1)
If $hOpenFile = -1 Then
SetError(1)
Return 0
EndIf
$hWriteFile = FileWriteLine($hOpenFile, $sMsg)
If $hWriteFile = -1 Then
SetError(2)
Return 0
EndIf
FileClose($hOpenFile)
Return 1
EndFunc ;==>_FileWriteLog
Ensuite si je pouvais lancer une defrag en silence... Et après voir pour rajouter une fréquence de lancement du script ( par exemple si lundi alors lancer la defrag si autre jour ne rien faire...)
Merci à tous =D


