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.