AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dateien löschen

Ein Thema von blauglaser · begonnen am 4. Feb 2006 · letzter Beitrag vom 6. Feb 2006
 
blauglaser
(Gast)

n/a Beiträge
 
#14

Re: Dateien löschen

  Alt 5. Feb 2006, 18:11
Hallo Marabu,
also als Fehlermeldung kommt "Ungültiges Argument zum codieren des Datums" wenn ich das Programm in Einzellschritten durchlaufe bleibt es bei "if FileDateToDateTime(FileAge(DateFile)) <= MyAge thenif FileDateToDateTime(FileAge(DateFile)) <= MyAge then stehen wenn ich dann FileDateToDateTime vor FileAge entferne läuft das Programm auf DeleteFile(Datefile); aber die Datei wird nicht gelöscht.
Den Code für FindFile habe ich im Netz gefunden und nachträglich das Result zum testen abgeändert damit die Datei an eine Variable übergeben wird.
Delphi-Quellcode:
function FindFiles (aPath, aFindMask: String; aWithSub: Boolean):String;
Var
  FindRec: tSearchRec;
  Dat: String;
Begin
  // Wenn die Stringliste nil ist oder aPath oder aFind nicht angegeben ist
  // dann raus
  If (aPath = '') or (aFindMask = '') Then
    Exit;


  // Wenn am Ende der Pfadangabe noch kein \ steht, dieses hinzufügen
  // (Oder die Funktion IncludeTrailingPathDelimiter aus der Unit SysUtils.pas verwenden)
  If aPath[Length (aPath)] <> '\Then
    aPath := aPath + '\';


  // Im aktuellen Verzeichnis nach der Datei suchen
  If FindFirst (aPath + aFindMask, faAnyFile, FindRec) = 0 Then
    Repeat
      If (FindRec.Name <> '.') and (FindRec.Name <> '..') Then
        // ...Ergebnis in die Stringlist einfügen
        Dat:= FindRec.Name;
        Result:=Dat;
    Until FindNext (FindRec) <> 0;


  FindClose (FindRec);


  // Wenn nicht in Unterverzeichnissen gesucht werden soll dann raus
 // If Not aWithSub Then
   // Exit;

 
  // In Unterverzeichnissen weiter suchen
 // If FindFirst (aPath + '*.*', faAnyFile, FindRec) = 0 Then
   // Repeat
     // If (FindRec.Name <> '.') and (FindRec.Name <> '..') Then
        // Feststellen, ob es sich um ein Verzeichnis handelt
       // If Boolean (FindRec.Attr and faDirectory) Then
          // Funktion erneut aufrufen, um Verzeichnis zu durchsuchen (Rekursion)
         // FindFiles (aPath + FindRec.Name, aFindMask, aWithSub, aResult);
// Until FindNext (FindRec) <> 0;


  // FindClose (FindRec);
End;


{$R *.DFM}


procedure TForm1.Button1Click(Sender: TObject);

Var
path, Mask :String;
MyYear,MyMonth,MyDay:integer;
Datefile:String;
MyAge:TDateTime;



begin
path := Edit1.text;
Mask := Edit2.text;
MyYear := StrToInt (Edit3.Text);
MyMonth := StrToInt (Edit4.Text);
MyDay := StrToInt (Edit5.Text);
MyAge := EncodeDate(myYear, myMonth, Myday);
Datefile := FindFiles (path, Mask, True);
if FileDateToDateTime(FileAge(DateFile)) <= MyAge then
begin
DeleteFile(Datefile);
end;
end;


end.
ich hoffe das mit dem Einfügen des Quelltextes ist so Ok

freundliche Grüsse
Ralf
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:54 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