Hallo, ich möchte eine Routine zur Diskussion stellen: Sie löscht alle Dateien (außer versteckte Dateien) und Ordner in einem Verzeichnis. Da alles was mit dem Löschen von Dateien zu tun hat, potentiell fatale Folgen haben kann, wäre ich froh eure Kommentare dazu zu hören ...
Delphi-Quellcode:
procedure MyDeleteAllNoHidden(const Path, WildCard: string);
// Löscht alle Dateien und Ordner (außer versteckte Dateien) im Verzeichnis Path!!!
// Aufrufbeispiel: MyDeleteAllNoHidden('D:\MyDir\ADir\', '*');
var
SR: TSearchRec;
AllFiles: string;
begin
if FindFirst(Path + WildCard, (faAnyFile or faDirectory) and not faHidden, SR) = 0 then
repeat
if (SR.Name <> '.') and (SR.Name <> '..') then
begin
//AllFiles := AllFiles + Path + SR.Name + #13#10;
if JclFileUtils.IsDirectory(Path + SR.Name) then
JclFileUtils.DeleteDirectory(Path + SR.Name, True)
else
DeleteFile(Path + SR.Name);
end;
until FindNext(SR) <> 0;
FindClose(SR);
//MessageDlg(AllFiles, mtInformation, [mbOK], 0);
end;