Hey Leute,
während dieses Skriptes soll ein Balken durchlaufen, der den Kopierstatus zeigt, also wie viel kopiert wurde.
Das Skript sieht wie folgt aus:
Spoiler anzeigen
#include <GUIConstants.au3>
#include <File.au3>
#include <Excel.au3>
#Region ### START Koda GUI section ### Form=d:\autoit\koda\forms\copygui.kxf
$KopierenGUI = GUICreate("Kopieren ", 455, 269, 465, 319)
$DirList = GUICtrlCreateCombo("---", 96, 56, 265, 25)
GUICtrlSetFont(-1, 11, 800, 0, "Comic Sans MS")
$Copy = GUICtrlCreateButton("Kopieren", 128, 112, 209, 113, 0)
GUICtrlSetFont(-1, 36, 800, 0, "Comic Sans MS")
$Delete = GUICtrlCreateButton("Löschen", 40, 240, 369, 25, 0)
GUICtrlSetFont(-1, 8, 800, 0, "Comic Sans MS")
$ProgressCopy = GUICtrlCreateProgress(16, 8, 425, 41)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
$Dir = "\\Medien\Sonstiges"
$Dir_Combo = _FileListToArray($Dir)
If Not @error Then
For $i = 1 To Ubound($Dir_Combo)-1
If FileGetAttrib($Dir&"\"&$Dir_Combo[$i]) = "D" Then
GuiCtrlSetData($DirList, $Dir_Combo[$i])
EndIf
Next
EndIf
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Copy
GUICtrlSetState ($Copy, $GUI_DISABLE)
$PfadSource = GUICtrlRead ($DirList)
DirCreate ("C:\Von MedienServer\"&$PfadSource)
$PfadZiel = "C:\Von MedienServer\"&$PfadSource
$Kopieren = DirCopy ("\\Medien\Sonstiges\"&$PfadSource, $PfadZiel,1)
$FileSize = DirGetSize ("\\Medien\Sonstiges\"&$PfadSource)
$CurSize = 0
Do
GUICtrlSetData($ProgressCopy, $CurSize)
$CurFileSize = DirGetSize ($PfadZiel)
$CurSize = $CurFileSize * 100
$CurSize = $CurSize / $FileSize
$CurSize = Ceiling ($CurSize)
$CurFileSize = Round ($CurFileSize / 1024 / 1024, 2)
Sleep (100)
Until $CurSize >= 99
Case $Delete
$PfadSource = GUICtrlRead ($DirList)
$DeleteProgress = FileDelete ("\\Medien\Sonstiges\"&$Pfadsource)
If $DeleteProgress = 1 Then
MsgBox (1, "", "Fertig")
EndIf
EndSwitch
WEnd
Nur leider bewegt sich der Balken beim Kopieren nicht ![]()