Auf Ereignis warten (Kopiervorgang einer Datei)

  • hallo liebe Leute!

    an einer Stelle komme ich nicht weiter, hoffe auf Eure Unterstützung :o)

    ich habe eine Funktion, die mir eine ISO Datei (2 GB Größe) von einem Netzlaufwerk auf die lokale Festplatte kopiert.
    Der Kopiervorgang dauert an die 4 Minuten. Am Ende des Kopiervorganges möchte ich überprüfen, ob die Datei erfolgreich rüberkopiert wurde.

    Meine Schwierigkeit besteht darin, dass Autoit Script auf die Datei warten soll, bis diese vollständig kopiert wurde, erst dann abfragen ob die Datei da ist. Mit dem befehl SLEEP(X) würde ich ungern arbeiten.

    Gibt es eine Möglichkeit auf diesen Kopiervorgang dynamisch zu warten, und dann weitere Schritte auszuführen?

    Freue mich auf Eure Rückmeldung! und danke im Voraus!

    =CODE=
    func _copyIso($versionsnummer)

    ; works
    DriveMapAdd("X:", "\\server\freigabe" ,1, "user", "pass")

    $folder = "image_" & @MDAY & "." & $versionsnummer
    $quell_datei = 'X:/' & $folder & "/Setup/" & "*.iso"
    $ziel_datei = 'C:/test/copy.iso.'

    if (FileExists($quell_datei)) Then

    fileCopy($quell_datei, $ziel_datei)

    ; hier soll autoit Script dynamisch auf die zu kopierende Datei warten! geht es???

    if (FileExists($ziel_datei) Then
    return True
    Else
    return False
    EndIf

    Else
    return false
    EndIf

    EndFunc

    Einmal editiert, zuletzt von dasAundO (12. September 2008 um 13:43)

  • danke! FileCopy wartet tatsächlich bis die Datei kopiert wurde!

    Wie gehe ich vor, wenn ich anderes programm warten möchte:

    und zwar:

    mit run("VixInstall.exe") wird ein tool zur Steuerung der VM Ware aufgerufen. Dabei wird die virtuelle Maschiene gestartet und ein paar Sachen damit automatisch gemacht.
    das VixInstall.exe braucht etwa 1 Stunde, nanach muss autoit seine Arbeit wieder aufnehmen. geht das???

    wenn ich diesen Code ausführe wartet autoit nicht bis VixInstall.exe seine Arbeit abschliesst.

    run("VixInstall.exe")
    ; hier soll autoit warten bis vixInstall.exe zu Ende ist
    msgBox(0,"log","vixInstall ist zu Ende")

    wenn ich das ausführe bekomme ich sofort die nachricht "vixInstall ist zu Ende" und das Programm läuft weiterhin im Hintergrund!

    Bitte um Hilfestellung & danke im Voraus!!