Einzelnen Beitrag anzeigen

Vjay

Registriert seit: 2. Dez 2003
Ort: Berlin/Eschede
481 Beiträge
 
Delphi 7 Professional
 
#9

Re: Verzeichnisse loeschen die Nicht leer sind ?

  Alt 18. Nov 2004, 13:05
Und ohne Shelloperation:

Delphi-Quellcode:
{** Löscht einen Ordner mit allen Unterordnern "RM /S"}
function Deltree( Dir: string): Boolean;
 procedure Del(const Dir: string);
 var
  SearchRec: TSearchRec;
  Found: Cardinal;
 begin
  FindFirst( Dir + '*.*', faAnyFile, SearchRec);
  FindNext( SearchRec);
  Found := FindNext( SearchRec);
  while ( Found = 0) do
  begin
   SetFileAttributes( PChar(Dir + SearchRec.Name), FILE_ATTRIBUTE_NORMAL);
   if (SearchRec.Attr and faDirectory >0) then Del(Dir + SearchRec.Name + '\')
   else DeleteFile(Dir + SearchRec.Name);
   Found := FindNext(SearchRec);
  end;
  FindClose( SearchRec);
  RemoveDirectory(pchar(dir));
 end;
begin
  Dir:= IncludeTrailingPathDelimiter( Dir);
  Result := True;
  if DirectoryExists(Dir) then
  begin
    Del(Dir);
    if DirectoryExists(Dir) then Result := False;
  end
  else Result := False;
end;
Wer später bremst ist eher tot.
  Mit Zitat antworten Zitat