Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.07.26;
Скачать: CL | DM;

Вниз

Как изменить дату файла?   Найти похожие ветки 

 
andreil ©   (2008-02-23 15:08) [0]

Собственно на VCL это делалось так:
FileSetDate(FileHandle, DatetimeToFiledate(EncodeDate(2007, 01, 01)));
А как аналогично сделать на KOL? И еще - как получить дату создания файла?


 
ANTPro ©   (2008-02-23 16:18) [1]

FileTime(); — классная процедурка :о)


 
andreil   (2008-02-23 18:24) [2]

Спасибо :)


 
andreil ©   (2008-02-27 13:13) [3]

Хм, сделал так:

If Find_First(FileName, find) then
begin
 CreateTime:=find.ftCreationTime;
 CreateTime.dwLowDateTime:=CreateTime.dwLowDateTime-100000;
 FileTime(FileName, @CreateTime, @find.ftLastAccessTime, @find.ftLastWriteTime);
end;


дату не меняет :(


 
Compiler ©   (2008-02-27 20:06) [4]


procedure SetTimeFile(Filename:String; ST:TSystemTime);
var
 FileHandle:THandle;
 FileTime: TFileTime;
 DT:TDateTime;
begin
ZeroMemory(@FileTime,sizeof(FileTime));
SystemTime2DateTime(ST,DT);
DateTime2FileTime( dt,FileTime);
FileHandle:=CreateFile(PChar(Filename), GENERIC_WRITE,
            0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
SetFileTime(FileHandle,nil,nil,@FileTime);
CloseHandle(FileHandle);
end;

procedure TForm1.Button4Click(Sender: PObj);
var
 ST:TSystemTime;
begin
with ST do
begin
 wYear:=2007;
 wMonth:=1;
 wDay:=1;
 wHour:=10;
 wMinute:=10;
 wSecond:=10;
end;
SetTimeFile("c:\1.wav",st);
end;


 
andreil ©   (2008-02-28 09:05) [5]

> Compiler
Спасибо, мне еще пригодилась бы функция получения даты файла.
Судя по всему, это будет чтото вроде твоего куска кода, только с GetFileTime?


 
andreil ©   (2008-02-28 09:37) [6]

Все, уже сделал такую функцию:
function GetTimeFile(FileName: string): TSystemTime;
var
 FileHandle:THandle;
 FileTime: TFileTime;
 DT:TDateTime;
begin
 ZeroMemory(@FileTime,sizeof(FileTime));
 FileHandle:=CreateFile(PChar(Filename), GENERIC_WRITE,
           0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
 GetFileTime(FileHandle, nil, nil, @FileTime);  
 CloseHandle(FileHandle);
 FileTime2DateTime(FileTime, DT);
 DateTime2SystemTime(DT, result);
end;



Страницы: 1 вся ветка

Текущий архив: 2009.07.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
15-1242766394
Германн
2009-05-20 00:53
2009.07.26
А что нынче происходит с Яндексом? Кто шалит?


15-1242938302
Юрий
2009-05-22 00:38
2009.07.26
С днем рождения ! 22 мая 2009 пятница


2-1243581095
texx
2009-05-29 11:11
2009.07.26
Как создать большой файл


15-1243262312
@!!ex
2009-05-25 18:38
2009.07.26
Как добавить информацию о версии в С++?


6-1205276109
kail
2008-03-12 01:55
2009.07.26
Нужно синхронизировать БД