Hi, mein Programm kopiert derzeit Dateien und Verzeichnisse mithilfe der folgenden Funktion. Beim Kopieren öffnet sich das bekannte Explorer-Fenster. Ich würde jedoch gerne die Progressbar auf meinem Formular nutzen und das zusätzliche Fenster verstecken. Gibt es eine Möglichkeit, den Fortschritt per Win-
API auszulesen ? Hab die Suche benutzt und immer nur gelesen geht nicht, aber im
MSDN gibts sowas wie ne Callback Funkion ? Wenn es wirklich nicht geht, gibt es sonst eine Möglichkeit zum Kopieren von
Verzeichnissen (nicht Dateien) mit Progressbar ?
Das Durchlaufen des Verzeichnisses und das rekursive Zusammenzählen aller Untergeordneten Dateien mit Findfirst und findnext traue ich mir nicht zu
Delphi-Quellcode:
function CopyFiles (const fromDir, toDir: string): Boolean;
var
fos: TSHFileOpStruct;
begin
ZeroMemory(@fos, SizeOf(fos));
with fos do
begin
wFunc := FO_COPY;
// fFlags := FOF_FILESONLY;
fFlags := 0;
pFrom := PChar(fromDir + #0);
pTo := PChar(toDir)
end;
Result := (0 = ShFileOperation(fos));
end;