Usuwanie katalogów starszych od...

0

Witam,
niestety nie potrafię sobie poradzić z takim oto problemem:
potrzebuję usunąć lub jeszcze lepiej przenieść do kosza wszystkie katalogi podrzędne wraz z ich plikami, które są starsze niż np 30 dni.
Usunąć pliki z jednego katalogu starsze niż 30 dni potrafię, ale z katalogami się pogubiłem.

Pozdrawiam Antek

0
function GetFolderDate(Folder: string): TDateTime;
var
  Rec: TSearchRec;
  Found: Integer;
  Date: TDateTime;
begin
  if Folder[Length(folder)] = '\' then
    Delete(Folder, Length(folder), 1);
  Result := 0;
  Found  := FindFirst(Folder, faDirectory, Rec);
  try
    if Found = 0 then
    begin
      Date   := FileDateToDateTime(Rec.Time);
      Result := Date;
    end;
   finally
   FindClose(Rec);
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
var
  d_f, a, b: TDateTime;
begin
  DateSeparator := '-';
   ShortDateFormat := 'dd/mm/yyyy';
    d_f := GetFolderDate('F:\3dsmax5');
    a:= StrToDate(FormatDateTime('dd-mm-yyyy', Now));
   b:= StrToDate(FormatDateTime('dd-mm-yyyy', d_f));
 if a - b > 30 then Showmessage('Folder jest starszy niż 30 dni!')
else Showmessage('Folder mieści się w 30 dniach :)');
end;

Zamiast pierwszego Showmessage wstaw kod usuwania folderu. Oczywiście wierzę, że to potrafisz napisać. :> [rotfl]

<font size="3">www.austrinus.prv.pl</span> <-- na tej stronce umieściłem swój kod źródłowy programiku który podaje wiek wybranego w DirectoryListBox folderu i informuje odpowiednim komunikatem.

0

Piękne dzięki

Antek

1 użytkowników online, w tym zalogowanych: 0, gości: 1