Einzelnen Beitrag anzeigen

Benutzerbild von Opa
Opa

Registriert seit: 12. Jun 2003
107 Beiträge
 
Delphi 7 Enterprise
 
#1

CopyFile; MoveFile; SHFileOperation

  Alt 27. Sep 2009, 21:37
Die Handhabung von "CopyFile; MoveFile; SHFileOperation" sind mir bekannt, allerdings wenn ich diese anwende bekomme ich keine Zwischenergebnisse.
So wie bei folgendem Code:
Delphi-Quellcode:
function TDhDrive.FileCopy(const FromFile,ToFile:string):boolean;
….
      BlockRead(FFrom,Buf,SizeOf(Buf),Count);
      FSize := FSize + Count;
      SendMessage(Handle,WM_READ_DRIVE,integer(@FSize),11);
      while (Count > 0) and not ALeave do
      begin
        BlockWrite(FTo,Buf,Count);
        BlockRead(FFrom,Buf,SizeOf(Buf),Count);
        FSize := FSize + Count;
        SendMessage(Handle,WM_READ_DRIVE,integer(@FSize),11);
Wie kann ich bei CopyFile; MoveFile oder ggf. SHFileOperation zwischen Ergebnisse des Kopiervorganges abfangen und wie in dem Beispiel senden.

Das Verschieben und nachfolgendes löschen macht eigentlich das Problem.
Klar kann ich eine Datei Kopieren und dann löschen.
Bei dem gleichen Laufwerk ist Move immer schneller weil (so denke ich) nicht kopiert wird sondern es werden nur Adressen im Lw neu geschrieben werden. Anderes sieht es aus wenn von C > D Verschoben wird. Dann wird immer auch kopiert.
Zwar könnte ich mir das zusammenbasteln. Gibt es aber eine "schöne" Lösung.
Danke
Wenn man nicht weiß was man sucht, findet man auch mit Google nichts.
Bevor ich hier eine Frage stelle, wurde Google vorher befragt. Hinweise dieser Art kann man sich schenken. Im übrigen muss mir niemand antworten.
  Mit Zitat antworten Zitat