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

Вниз

Дата создания файла   Найти похожие ветки 

 
Вечно молодой ©   (2002-08-01 09:43) [0]

Здравствуйте!
Определяю дату создания файла:

var
F : TSearchRec;
FileTime : TFileTime;
SystemTime : TSystemTime;
Date_Create : TStringList;
begin
... (поиск нужного файла)
FileTimeToLocalFileTime(F.FindData.ftCreationTime, FileTime);
FileTimeToSystemTime(FileTime, SystemTime);
Date_Create.Append (DateTimeToStr (SystemTimeToDateTime(SystemTime)));
...
end.


Если произвести эти операции с файлом, который в последний раз был
сохранён в MS-DOS, то получается, что дата его создания: 01.01.1980. Почему,
и как это исправить? Please...


 
Opuhshii ©   (2002-08-01 10:07) [1]

В "MS-DOS" было только время последнего изменения,... FAT16... не 32,..


 
Opuhshii ©   (2002-08-01 10:09) [2]

в догонку,..
"как это исправить? Please..." не использовать этих программ,... %)


 
Opuhshii ©   (2002-08-01 11:04) [3]

Дико извиняюсь,... конечно дата создания файла сохраняется не в FAT, а в дескрипторах файлов,... так вот в FAT16 использовались дескрипторы в которых было лишь дата последнего изменения,..

struct _DIR {
BYTE dir_Name[8]; // имя
BYTE dir_Extension[3]; // расширение имени
BYTE dir_Attributes; // атрибуты
BYTE dir_Reserved[10]; // зарезервировано
UINT16 dir_CreateTime; // время создания
UINT16 dir_CreateDate; // дата создания
UINT16 dir_FirstCluster; // Номер первого кластера файла
UINT32 dir_FileSize; // размер файла }

а в FAT32

struct _DIR {
BYTE dir_Name[8]; // имя
BYTE dir_Extension[3]; // расширение имени
BYTE dir_Attributes; // атрибуты
BYTE dir_NTReserved; // зарезервировано для Windows NT BYTE dir_CreateTimeTenth; // десятые доли времени создания UINT16 dir_CreateTime; // время создания
UINT16 dir_CreateDate; // дата создания
UINT16 dir_LastAccessDate; // дата последнего доступа
UINT16 dir_FirstClusterHi; // старшее слово номера кластера
UINT16 dir_WriteTime; // время обновления
UINT16 dir_WriteDate; // дата обновления
UINT16 dir_FirstClusterLo; // младшее слово номера кластера
UINT32 dir_FileSize; // размер файла }

вот так вота,...


 
Вечно молодой ©   (2002-08-01 11:56) [4]

Огромное спасибо.



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
14-31949
NetBreaker666
2002-09-14 14:38
2002.10.10
Есть ли здесь кто-нибудь с МтМеха СПбГУ ??? Да, и фидошники ?


7-32041
Андрей Борода
2002-08-01 23:49
2002.10.10
Убрать проги из автозагрузки.


3-31633
roadrunner
2002-09-13 14:38
2002.10.10
Paradox и DBase


1-31859
Hanson
2002-09-27 17:51
2002.10.10
Есть ли в компиляторах Pascal оптимизация?


1-31718
diMAN
2002-09-27 18:20
2002.10.10
Системная кнопка