...convert TFileTime to TDateTime?

Author: Winston Kotzan
Homepage: http://www.wakproductions.com/

Category: System

function FileTimeToDateTime(FileTime: TFileTime): TDateTime;
var
  
ModifiedTime: TFileTime;
  SystemTime: TSystemTime;
begin
  
Result := 0;
  if (FileTime.dwLowDateTime = 0) and (FileTime.dwHighDateTime = 0) then
    
Exit;
  try
    
FileTimeToLocalFileTime(FileTime, ModifiedTime);
    FileTimeToSystemTime(ModifiedTime, SystemTime);
    Result := SystemTimeToDateTime(SystemTime);
  except
    
Result := Now;  // Something to return in case of error
  
end;
end;

function DateTimeToFileTime(FileTime: TDateTime): TFileTime;
var
  
LocalFileTime, Ft: TFileTime;
  SystemTime: TSystemTime;
begin
  
Result.dwLowDateTime  := 0;
  Result.dwHighDateTime := 0;
  DateTimeToSystemTime(FileTime, SystemTime);
  SystemTimeToFileTime(SystemTime, LocalFileTime);
  LocalFileTimeToFileTime(LocalFileTime, Ft);
  Result := Ft;
end;

 

printed from
www.swissdelphicenter.ch
developers knowledge base