有无修改文件的时间属性的API?
函数是什?
请问怎样声明这个API啊?

解决方案 »

  1.   

    首部 function FileSetDate(const FileName: string; Age: Integer): Integer; overload; $[SysUtils.pas
    首部 function FileSetDate(Handle: Integer; Age: Integer): Integer; overload; platform; $[SysUtils.pas
    功能 返回设置文件的修改时间
    说明 修改成功则返回0
    参考 function Windows.SetFileTime
    例子 SpinEdit1.Value := FileSetDate(Edit1.Text, DateTimeToFileDate(StrToDateTime(Edit2.Text))
      

  2.   

    我不是要这个啊。
    如何获取文件的创建时间?
    我的代码:
    function GetFileProp(FileName: string): TFileProperty;
    //TFileProperty是自定义的文件属性类型
    var
      SR: TSearchRec;
    begin
      if FindFirst(FileName, faAnyFile, SR) = 0 then
      begin
        Result.FileName := FileName;
        Result.Size := SR.Size;
        Result.Attr := SR.Attr;
        Result.DOSFileName := SR.FindData.cAlternateFileName;
        Result.CreationTime := FileTimeToLocalSystemTime(SR.FindData.ftCreationTime);
        Result.LastWriteTime := FileTimeToLocalSystemTime(SR.FindData.ftLastWriteTime);
        Result.LastAccessTime := FileTimeToLocalSystemTime(SR.FindData.ftLastAccessTime);
        FindClose(SR);
      end;
    end;
    SR.FindData的属性找不到,还有FileTimeToLocalSystemTime()也找不到
    是不是要声明API
      

  3.   

    //uses shellapi
    function FileTimeToLocalSystemTime(FTime: TFileTime): TSystemTime;
    var
      STime: TSystemTime;
    begin
      FileTimeToLocalFileTime(FTime, FTime);
      FileTimeToSystemTime(FTime, STime);
      Result := STime;
    end;
      

  4.   

    function CovFileDate(Fd:_FileTime):TDateTime;
    var
      Tct:_SystemTime;
      Temp:_FileTime;
    begin
      FileTimeToLocalFileTime(Fd,Temp);
      FileTimeToSystemTime(Temp,Tct);
      CovFileDate:=SystemTimeToDateTime(Tct);
    end;function GetFileTime(const Tf:string):TDateTime;
    { 获取文件时间,Tf表示目标文件路径和名称 }
    var
      Tp:TSearchRec; { 申明Tp为一个查找记录 }
    begin
      FindFirst(Tf,faAnyFile,Tp); { 查找目标文件 }
      Result:=CovFileDate(Tp.FindData.ftCreationTime);
      { 返回文件的创建时间 }
      FindClose(Tp);
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      Caption:=DateTimeToStr(GetFileTime(Edit1.Text));
    end;win api 中定义了WIN32_FIND_DATA结构,用来记录文件的时间和属性信息
    TWIN32FINDDATA是对WIN32_FIND_DATA的封装
    FILETIME 文件的创建时间修改SetFileTiem
      

  5.   

    Tp.FindData.ftCreationTime中的ftCreationTime好象没有的?
      

  6.   

    FileTimeToLocalSystemTime()怎么样用这个函数啊?