为什么用idftp get() 下载一个文件后修改日期被改成了系统当前的日期?该如何处理

为什么用idftp get() 下载一个文件后修改日期被改成了系统当前的日期?
为什么用idftp get() 下载一个文件后修改日期被改成了系统当前的日期,而不能与服务器上的文件修改日期相同,比如下载 up.rar 服务器上的修改日期为 2004.01.21 而被改成本地的 2007.10.23  

有什么好的办法解决吗?

------解决方案--------------------
//设置文件修改时间
Function SetFileDateTime(FileName : String; NewDateTime : TDateTime): Boolean;
var FileHandle: Integer;
FileTime: TFileTime;
LFT: TFileTime;
LST: TSystemTime;
begin
Result := False;
try
DecodeDate(NewDateTime, LST.wYear, LST.wMonth, LST.wDay);
DecodeTime(NewDateTime, LST.wHour, LST.wMinute, LST.wSecond, LST.wMilliSeconds);
IF SystemTimeToFileTime(LST, LFT) Then
begin
IF LocalFileTimeToFileTime(LFT, FileTime) Then
begin
FileHandle := FileOpen(FileName, fmOpenReadWrite or fmShareExclusive);
IF SetFileTime(FileHandle, NIL, NIL, @FileTime) Then Result := True;
end;
end;
finally
FileClose(FileHandle);
end;
end;