Gibt es ein Programm, das ständig eine bestimmte Dateigröße auf der Festplatte überprüft, etwa alle 5 Minuten oder so?
Wenn die Dateigröße nicht mehr zunimmt, würde ich eine Aktion X ausführen (X vom Benutzer festgelegt - z. B. eine Anwendung starten oder einen Sound abspielen).
Betriebssystem - Windows 7 Home
Der folgende Code funktioniert nicht. Die Dateigröße wird nicht richtig erfasst. Wenn ich mit der rechten Maustaste auf die Datei klicke und ihre Größe überprüfe, wird sie ständig aktualisiert. Das AutoIt-Skript scheint jedoch nicht alle 2 Minuten die richtige Größe zu erfassen. Wenn ich das Zeitintervall auf 5 Minuten erhöhe, nimmt es nur dann die aktualisierte Größe EINMAL auf.
Global $logging = True
$file = $CmdLine[1] & "\" & $CmdLine[2]
_log("Filename: " & $file)
$size = 0 ;set initial size to 0
Sleep(60000) ;sleep 1 minute
If FileExists($file) Then
While 1 ;loop indefinitely
$filesize = FileGetSize($file) ;get current size of file
_log("File Size: " & $filesize)
If $filesize = $size Then ;compare new size with old size
_log("Download Halted: " & $filesize) ;notify that file is complete
Run("AStart.bat", $CmdLine[1])
ExitLoop ;exit
EndIf
$size = $filesize ;save current file size
Sleep(120000) ;sleep 2 minutes
WEnd
Else
MsgBox(0, "File Not Found", "File Not Found! - " & $file)
EndIf
Func _log($message)
If $logging Then ; global variable where you can globally switch OFF/ON logging
FileWriteLine(@ScriptDir & "\file.log", @YEAR & "-" & @MON & "-" & @MDAY & "-" & @HOUR & ":" & @MIN & " --> " & $message)
EndIf
EndFunc