Dircopy with Progressbar

  • Hallo,

    Es gibt ja nun schon ein paar möglichkeiten, Dateien mit Progressbar zu kopieren. Hier eine weitere Idee von mir :rolleyes:

    [autoit]


    Func CopyWithProgress($srcDir, $destDir)
    If StringRight($srcDir, 1) = "\" Then $srcDir = StringLeft($srcDir, StringLen($srcDir) - 1)
    If StringRight($destDir, 1) <> "\" Then $destDir = $destDir & "\"
    If Not FileExists($destDir) Then DirCreate($destDir)
    $srcSize = DirGetSize($srcDir, 1)
    $1_percent = $srcSize[0] / 100
    Run('XCOPY "'& $srcDir & '" "' & $destDir & '" /D /S /E /V /C /H /R /O /Y')
    ProgressOn("Advanced status of file copying", $1_percent & "%", "")
    Do
    $destSize = DirGetSize($destDir, 1)
    ProgressSet(Round($destSize[0] / $1_percent, 2), Round($destSize[0] / (1024 * 1024), 2) & " MB of " & Round($srcSize[0] / (1024 * 1024), 2)& " MB copied" & @CRLF _
    & $destSize[1] & " of " & $srcSize[1] & " Files copied." & @CRLF _
    & $destSize[2] & " of " & $srcSize[2] & " Folders copied.", Round($destSize[0] / $1_percent, 2) & "% - Done!")
    Sleep(200)
    Until $destSize[0] >= $srcSize[0]
    ProgressOff()
    EndFunc

    [/autoit]

    Die Sache ist sehr einfach gestrickt und kommt ohne Includes aus. Trozdem sieht man wie ich finde alles wichtige ausser die verbleibende Zeit.

    probierts aus.

    greez

    Einmal editiert, zuletzt von gigx (25. August 2007 um 19:05)

  • Bei mir funktioniert es net...

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Hallo stevens,

    dann nimm dieses von mir überarbeitete Skript:


    auf Wunsch eines einzelnen Nutzers, nochmal überarbeitet.

    mfg autoBert

    Einmal editiert, zuletzt von autoBert (26. November 2016 um 13:02) aus folgendem Grund: rudimentäres Errorhandling eingebaut, wegen "Error: Subscript used on non-accessible variable."

  • Funktioniert! Danke!

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Stört es dich, wenn ich dich in meiner Infodatei für UltimateBackup erwähne?

    EDIT: Kann man auch beim Kopieren von "@UserProfileDir" den Ordner "AppData" ausschließen? Der ist 11 GB groß :D

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

    Einmal editiert, zuletzt von Stevenx (24. Juni 2011 um 11:54)

  • Ich weiß, der Thread ist uralt, aber die Frage passt hier eigentlich gut rein:

    Was muss ich an autoBerts Script ändern, um kein Dialog-Fenster nach dem Kopieren zu bekommen?

    Das Script funktioniert einwandfrei, ich möchte jedoch, dass es direkt nach dem Kopieren ohne Interaktion weiter läuft.

  • @Eggsplorer

    Zeile 32-34 entfernen (diese hier:

    32 MsgBox(0,"Fertig in " & $tsDiff & " sec.",Round($destSize[0] / (1024 * 1024), 2) & " MB of " & Round($srcSize[0] / (1024 * 1024), 2)& " MB copied" & @CRLF _
    33 & $destSize[1] & " of " & $srcSize[1] & " Files copied." & @CRLF _
    34 & $destSize[2] & " of " & $srcSize[2] & " Folders copied." & @CRLF & Round($destSize[0] / $1_percent, 2) & "% - Done! ")

    LG
    olfibits

    PS: Das Skript macht bei mir gar nix sinnvolles... ?(

    neben AutoIt jetzt auch noch in C/C++, Java und Python aktiv :)
    Stand 04.04.2018, 13:34