Was soll
Spoiler anzeigen
$TargetSize = DirGetSize( $Targetwahl)
$SourceSize = DirGetSize( $Sourcewahl)
$Sourcehaelfte = $SourceSize/2
$Sourcegeteilt = $SourceSize/3
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]ProgressOn( 'Fortschritt', 'Hier wird der Fortschritt angezeigt')
Dim $Target, $Source, $TargetSize, $Targetwahl, $SourceSize, $Sourcegeteilt, $Sourcehaelfte, $Sourcewahl
If $TargetSize = $Sourcegeteilt Then
ProgressSet( 33, '33 Prozent fertig')
If $TargetSize = $Sourcehaelfte Then
ProgressSet( 50, '50 Prozent fertig')
If $TargetSize >= $SourceSize Then
ProgressSet( 100, '100 Prozent fertig; Backup fertig!')
ProgressOff()
EndIf
EndIf
EndIf
Run(@ComSpec & " /c " & 'Robocopy ' & $Sourcewahl & ' ' & $Targetwahl & ' /MIR', "", @SW_HIDE)
[/autoit]
bewirken?
Zuerst ließt du die Verzeichnisgröße aus (für das Quellverzeichnis und das Zielverzeichnis welches noch komplett leer ist...). Dann teilst du sie einmal durch 2 und einmal durch 3. Dann vergleichst du jeweils einmal ob die ausgelesene Verzeichnisgröße geteilt durch 2/3 exakt der Größe des Zielverzeichnisses entspricht und setzt nur dann den Wert für die Progressbar. Danach startest du den Backupvorgang...
Mein Tipp wäre, das Beispiel in der Hilfe zu ProgressSet zu studieren und bei gelegenheit auch ein AutoIt Tutorial anzusehen.