#include #include AutoItSetOption ("TrayIconHide", 1) ; sortie sur Shift-Alt-d HotKeySet("+!d", "sortir") ; attente en secondes entre 2 photos écrans $ATTENTE_SECONDE = 30 ; répertoire de stockage des photos écrans $REPERTOIRE_CAPTURE = @MyDocumentsDir & "\" & "capture" ; qualité jpeg $JPGQuality=20 ;~ variables temporaires $fichier_precedent = "" DirCreate($REPERTOIRE_CAPTURE) While 1 _capture() sleep($ATTENTE_SECONDE * 1000) WEnd Func _capture() Local $hBmp Dim $a_Date[7]=[False, @YEAR, @MON,@MDAY, @HOUR, @MIN, @SEC] Dim $aRecords Dim $aRecords2 $nom_date = $a_Date[1] & "." & $a_Date[2] & "." & $a_Date[3] & "-" & $a_Date[4] & "." & $a_Date[5] & "." & $a_Date[6] & ".jpg" $fichier_actuel = $REPERTOIRE_CAPTURE & "\" & "capture_" & $nom_date ; Capture full screen _ScreenCapture_SetJPGQuality($JPGQuality) _ScreenCapture_Capture ($fichier_actuel,0,0,-1,-1,False) if $fichier_precedent = "" Then $fichier_precedent = $fichier_actuel ConsoleWrite("$fichier_precedent vide" & @lf) Return EndIf $file_ancien = FileOpen($fichier_precedent, 16) If $file_ancien = -1 Then ConsoleWrite("erreur FileOpen $fichier_precedent" & @lf) $fichier_precedent = $fichier_actuel Return EndIf $file_nouveau = FileOpen($fichier_actuel, 16) If $file_nouveau = -1 Then FileClose($file_ancien) ConsoleWrite("erreur FileOpen $fichier_actuel" & @lf) $fichier_precedent = $fichier_actuel Return EndIf if FileRead($file_ancien) <> FileRead($file_nouveau) Then FileClose($file_nouveau) FileClose($file_ancien) ConsoleWrite($fichier_precedent & " <> " & $fichier_actuel & @lf) $fichier_precedent = $fichier_actuel Return EndIf FileClose($file_nouveau) FileClose($file_ancien) ; arrivé ici les 2 fichiers sont identiques donc on supprime le nvx fichier FileDelete( $fichier_actuel ) ConsoleWrite("FileDelete " & $fichier_actuel & @lf) EndFunc ;==>_capture Func sortir() MsgBox(0,"ScreenCapture", "Arrêt du programme ScreenCapture") Exit EndFunc