Witam wszystkich
Chciałby się dowiedzić jak moge programowo zmienić date utworzenia pliku. Pozdrawiam i z góry dziękuję.
Witam wszystkich
Chciałby się dowiedzić jak moge programowo zmienić date utworzenia pliku. Pozdrawiam i z góry dziękuję.
Funkcja WinAPI, SetFileTime. (opisana ładnie w helpie...)
Najpierw przyda się taka funkcja:
function DateTimeToFileTime(date:TDateTime):FILETIME;
var temp:SYSTEMTIME;
begin
DateTimeToSystemTime(date,temp);
SystemTimeToFileTime(temp,result);
end;
i teraz główny kod:
var f:hfile;
os:TOFSTRUCT;
ct,mt,at:FileTime;
temp:SYSTEMTIME;
begin
f:=OpenFile('c:\plik.txt',os,OF_READWRITE);
ct:=DateTimeToFileTime(now);
mt:=DateTimeToFileTime(now);
at:=DateTimeToFileTime(now);
SetFileTime(f,@ct,@mt,@at);
_lclose(f);
end;
I, jeśli za @ct, @mt, @AT damy nil, to ten czas pliku się nie zmieni (ct - czas utworzenia, mt - modyfikacji, at - ostatniego użycia)