Delphi7:
Uses:ShellAPI;
procedure SetFileDateTime(FileName: string;dtDate:TDateTime);
var
hFile:THandle;
ModifyTime:SYSTEMTIME;
ModifyFileTime,UpdateFileTime:FILETIME;
sDateTime:String;
begin
hFile:=CreateFile(pChar(FileName),GENERIC_WRITE,FILE_SHARE_READ,nil,OPEN_EXISTING,FILE_FLAG_BACKUP_SEMANTICS,0);
If hFile = INVALID_HANDLE_VALUE Then
begin
Exit;
end;
DateTimeToSystemTime(dtDate,ModifyTime); //将日期转换为系统时间SYSTEMTIME 类型。
SystemTimeToFileTime(ModifyTime,ModifyFileTime); //将系统时间转换为文件时间
LocalFileTimeToFileTime(ModifyFileTime,UpdateFileTime); //转换本地日期。
SetFileTime(hFile,@UpdateFileTime,@UpdateFileTime,@UpdateFileTime);
//修改文件时间。第一个为:CreateTime,第二个为:最后访问时间 LastAccessTime, 第三个为:最后修改时间 LastModifyTime.
CloseHandle(hFile);
end;