![]() |
Delphi-Version: 5
Einfrieren der Anwendung beim Löschen und Kopiern.
Diese Funktion hier funktioniert zwar super aber wenn ich 2GB Dateien und Unterverzeichnisse löschen, dann hängt die Anwendung solange reglos rum.
Delphi-Quellcode:
Das gleiche beim Kopieren von Dateien ca 2GB groß mit dem Befehl
function DeleteFiles(const AFile: string): boolean;
var sh: SHFileOpStruct; begin ZeroMemory(@sh, SizeOf(sh)); with sh do begin Wnd := Application.Handle; wFunc := FO_DELETE; pFrom := PChar(AFile +#0); fFlags := FOF_SILENT or FOF_NOCONFIRMATION; end; result := SHFileOperation(sh) = 0; end;
Delphi-Quellcode:
Weiß jemand Rat?
CopyFile(AltesVerzeichnis, NeuesVerzeichnis,true);
|
AW: Einfrieren der Anwendung beim Löschen und Kopiern.
Genau für so etwas sind Threads geradezu prädestiniert. ;-)
Erstelle am besten eine neue Klasse von TThread abgeleitet und packe den Code in dessen Execute-Methode. |
AW: Einfrieren der Anwendung beim Löschen und Kopiern.
Die Funktion kehrt erst zurück, wenn alles fertig ist und du hast der Funktion auch noch explizit gesagt, daß sie auf nichts reagieren und keinen Fortschritsdialog anzeigen soll. :stupid:
Zitat:
|
AW: Einfrieren der Anwendung beim Löschen und Kopiern.
Ok danke ich teste mal einwenig rum.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz