各位大侠:
   我想得到文件真正的创建时间,
    好比,远程我的文件从一个地方,上传到服务器,并且在服务器上,我首先要对文件进程操作,然后或得的文件创建时  间,修改时间,以及访问时间,都是依据我的操作系统的,并不是文件真正的创建时间!
而我想得到的是文件第一次真正被创建时时间!
也不知道说清楚没有!
先谢谢大家,万分感激!
   

解决方案 »

  1.   

    一般就是利用FileDateToDateTime和FileGetDate进行转换
      

  2.   


    procedure TForm1.Button1Click(Sender: TObject);
    var
      SR: TSearchRec;
      CT: tdatetime;
      tmp: _filetime;
      tmpsys: _systemtime;
    begin
      FindFirst('d:\a.txt',faAnyFile,SR);
      FileTimeToLocalFileTime(SR.FindData.ftCreationTime,tmp);
      FileTimeToSystemTime(tmp,tmpsys);
      CT:= SystemTimeToDateTime(tmpsys);
      showmessage(formatdatetime('YYYY-MM-DD HH:MM:SS',CT));
    end;
      

  3.   

    函数GetFileTime(const fn:string;const ftype:byte):string1.第一个参数表示文件名,比如OpenDialog1.FileName2.第二个参数表示获得的是哪种时间。1表示文件创建时间,2表示文件修改时间,3表示文件访问时间。  DateTimeToFileDate 函数 将DELPHI的日期格式转换为DOS的日期格式  frac是取小数部分,如frac(12.3456),结果:0.3456   
      

  4.   

    PE文件头IMAGE_FILE_HEADER的TimeDateStamp字段
    保存的是文件生成时间,从1969年十二月31日下午4:00开始的总秒数。