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

Вниз

Файл - время его создания, изменения, открытия   Найти похожие ветки 

 
Cr@zy-EyE ©   (2003-09-15 17:26) [0]

Как узнать эти св-ва у файла и изменить их.


 
Cr@zy-EyE ©   (2003-09-15 17:28) [1]

Удалено модератором


 
pasha_golub ©   (2003-09-15 17:29) [2]

SetFileAttributes+F1


 
pasha_golub ©   (2003-09-15 17:32) [3]

Пардон, не то :-(


 
Cr@zy-EyE ©   (2003-09-15 17:35) [4]

я посмотрел и тоже это понял


 
pasha_golub ©   (2003-09-15 17:35) [5]

FileSetDate+FileGetDate


 
[lamer]Barmaglot ©   (2003-09-15 17:37) [6]

GetFileTime, SetFileTime


 
Cr@zy-EyE ©   (2003-09-15 17:46) [7]

> pasha_golub © (15.09.03 17:35) [5]
И как понимать это число?


 
Chlavik ©   (2003-09-15 17:46) [8]

А как правильно преобразовать каждое время в TDateTime со структуруры Twin32FileInfo которая входит в состав TSearchRec у меня что то не получилось...
Вот моя функция
function FileTimeToDate(Filetime:TFileTime):TDateTime;
var SysTime:TSystemTime;
begin
if FileTimeToSystemTime(FileTime,SysTime) then
Result:=EncodeDateTime(SysTime.wYear,SysTime.wMonth,SysTime.wDay,
SysTime.wHour,SysTime.wMinute,
SysTime.wSecond,SysTime.wMilliseconds);

end;


 
Unknown   (2003-09-15 17:51) [9]

function GetFileModificationDate(FileName: TFileName): TDateTime;
var
FileHandle: THandle;
ModificationTime_: _FILETIME;
LocalModificationTime: _FILETIME;
ModificationTime: _SYSTEMTIME;
begin
FileHandle := CreateFile(PChar(FileName), GENERIC_READ,
FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, 0);
if FileHandle = INVALID_HANDLE_VALUE then
RaiseLastWin32Error();
try
if GetFileTime(FileHandle, nil, nil, @ModificationTime_) = False then
RaiseLastWin32Error();
if not FileTimeToLocalFileTime(ModificationTime_,
LocalModificationTime) then
RaiseLastWin32Error();
if not FileTimeToSystemTime(LocalModificationTime, ModificationTime) then
RaiseLastWin32Error();
Result := EncodeDate(ModificationTime.wYear, ModificationTime.wMonth,
ModificationTime.wDay) + EncodeTime(ModificationTime.wHour,
ModificationTime.wMinute, ModificationTime.wSecond, 0);
finally
CloseHandle(FileHandle);
end;
end;

procedure SetFileTimeEx(FileName: TFileName; CreationTime, ModificationTime:
TDateTime);
var
FCreationTime, FModificationTime: _FILETIME;
FileHandle: THandle;

function TDateTimeToUTC(ATime: TDateTime): _FILETIME;
var
SystemTime: _SYSTEMTIME;
LocalTime: _FILETIME;
begin
DecodeDate(ATime, SystemTime.wYear, SystemTime.wMonth,
SystemTime.wDay);
DecodeTime(ATime, SystemTime.wHour, SystemTime.wMinute,
SystemTime.wSecond, SystemTime.wMilliseconds);
SystemTime.wDayOfWeek := DayOfWeek(ATime) - 1;
if not SystemTimeToFileTime(SystemTime, LocalTime) then
RaiseLastWin32Error();
if not LocalFileTimeToFileTime(LocalTime, Result) then
RaiseLastWin32Error();
end;

begin
if not FileExists(FileName) then
raise Exception.Create("File " +
FileName + " not exits.");

FCreationTime := TDateTimeToUTC(CreationTime);
FModificationTime := TDateTimeToUTC(ModificationTime);
FileHandle := FileOpen(FileName, fmOpenWrite or fmShareDenyWrite);
if FileHandle = 0 then
RaiseLastWin32Error();
try
if not SetFileTime(FileHandle, @FCreationTime, nil, @FModificationTime) then
RaiseLastWin32Error();
finally
CloseHandle(FileHandle);
end;
end;


 
pasha_golub ©   (2003-09-15 19:21) [10]

Это не число, а две функции: одна + вторая :-)



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

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

Наверх




Память: 0.49 MB
Время: 0.015 c
1-82176
Юрий Ж.
2003-09-12 22:23
2003.09.25
TrackBar?


6-82360
mma
2003-07-12 14:52
2003.09.25
Проверка прокси?


14-82418
Dilezzz
2003-09-07 17:16
2003.09.25
Глюки с сохраненными играми в Delta Force: Black Hawk Down


14-82475
Mr@MsGuns
2003-09-06 16:29
2003.09.25
Ирландия - Россия: ваши прогнозы, господа товарищи?


6-82374
test
2003-07-24 15:53
2003.09.25
Как переслать по TCP TStringList (пример пожалуйста)