hi green-sound,
hast du denn schon eine Funktion womit du Ordner auf einem Laufwerk suchen kannst?
Wenn nicht benutze die Suchfunktion im Forum ich denke da lässt sich was passendes finden.
Um das Erstellungsdatum eines Ordners zu bekommen kannst du folgende Funktion benutzen:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| Function GetFileDate(TheFile: String): TDateTime;
Var SearchRec: TSearchRec; DT: TFileTime; ST: TSystemTime; Begin
Result:= 0; Try If (FindFirst(TheFile, faAnyFile, SearchRec) = 0) Then Begin FileTimeToLocalFileTime(SearchRec.FindData.ftCreationTime, DT); FileTimeToSystemTime(DT, ST); Result:= EncodeDate(st.wYear, st.wMonth, st.wDay); End; Finally FindClose(SearchRec); End; End; |
Und so könnte man die Funktion nutzen:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure TForm1.Button1Click(Sender: TObject);
Var FileDate: TDate; Directory: String;
Begin
Directory:= 'C:\Windows'; // Beispiel FileDate:= StrToDate(DateToStr(GetFileDate(Directory)+14)); If FileDate = Now Then ShowMessage('Der Ordner "'+Directory+'" ist 14 Tage alt') Else If FileDate > Now Then ShowMessage('Der Ordner "'+Directory+'" ist keine 14 Tage alt') Else If FileDate < Now Then ShowMessage('Der Ordner "'+Directory+'" ist über 14 Tage alt');
End; |
Ich brauchte diese Funktion auch einmal hab den Aufruf jetzt schnell etwas verständlicher umgeschrieben musst eben nur ein wenig ändern.
Ich hoffe ich konnte dir helfen