Einzelnen Beitrag anzeigen

Patrick

Registriert seit: 15. Sep 2003
184 Beiträge
 
Delphi 2010 Professional
 
#1

FindNext oder FileAge mit Samba auf Linux

  Alt 11. Jan 2005, 17:07
Tach,

Also ich hätte da folgendes Problem anzubieten:
Ich habe ein Programm geschrieben, was zwei Ordner miteinander vergleicht und dateien austauscht. Dabei wird auch das Änderungsdatum der Dateien beachtet.

Jetzt will mein Freund das Ganze mit einem Windows Pfad und einem Netzwerkpfad, der auf einem Linux-Server endet, anwenden. Für die Connnection zwischen seinem Window und Linux Rechner sorgt "Samba". Das Problem ist, dass mein Programm nun Dateien auflistet, die in beiden Ordnern vorhanden sind, und vom Änderungsdatum auch kein Unterschied aufweisen. Das kann nur der Fall sein, wenn einer der Funktionen (Findnext oder FileAge) nicht richtig funktioniert.

Delphi-Quellcode:
function GetLastModified(const Datei: string; out Value: TDateTime): Boolean;
var
  dt : Integer;
begin
  dt := FileAge(Datei);
  Result := dt >= 0;
  if Result then
    Value := FileDateToDateTime(dt);
end;
Delphi-Quellcode:
procedure ListFileDir(const Path: string; FileList : TStrings; const subdir : boolean);
var SR : TSearchRec;
begin
  if FindFirst(Path + '*.*', faAnyFile and faDirectory, SR) = 0 then
  begin
    repeat
      if ((SR.Attr and faDirectory) <> 0) and (subdir=true) then
      begin
        if (SR.Name <> '.') and (SR.Name <> '..') then ListFileDir(Path+SR.Name+'\',FileList, subdir);
      end
      else if (SR.Attr <> faDirectory) then FileList.Add(path+SR.Name);
    until FindNext(SR) <> 0;
    FindClose(SR);
  end;
end;
Leider kann ich nichts genaueres sagen. Aber ich denke, dass es die "FileAge"-Funktion ist.
Ich hoff einer von euch kann mir helfen, und das Problem lösen...
Genieße jede Minute deines Lebens, denn sie wird nicht wieder kommen.
  Mit Zitat antworten Zitat