![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Непонятки с датами файлов [D5, WinXP]
kami © (2005-08-07 11:01:00)Почему на некоторых файлах возвращается время на 1 час меньше?
Причем на 70%(примерно) возвращает правильно!
procedure TForm1.Button1Click(Sender:TObject);
var
SysTime:TSystemTime;
LocalTime:TSystemTime;
FileName:String;
begin
if not OpenDialog1.Execute then
exit;
FileName:=OpenDialog1.FileName;
Label1.Caption:=FileName;
hFile:=CreateFile(@FileName[1],GENERIC_READ,
0,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if GetFileInformationByHandle(hFile,FileInfo) then
if FileTimeToSystemTime(FileInfo.ftLastWriteTime,SysTime) then
begin
SystemTimeToTzSpecificLocalTime(nil,SysTime,LocalTime);
lbChangeFileTime.Caption:=IntToStr(LocalTime.wDay)+
'.'+IntToStr(LocalTime.wMonth)+
'.'+IntToStr(LocalTime.wYear)+
' '+IntToStr(LocalTime.wHour)+
':'+IntToStr(LocalTime.wMinute)+
':'+IntToStr(LocalTime.wSecond);
end;
CloseHandle(hFile);
end;
в "Свойства файла":
Blade 2.avi
изменен 1 января 2002 г., 1:01:02
В программе :
1.1.2002 0 :1:2
kami (2005-08-07 13:31:00) [1]Ааа... Понял, спасибо!
DiamondShark (2005-08-07 12:40:00) [2]Сам же написал SystemTimeToTzSpecificLocalTime, вот оно и возвращается с учётом зимнее/летнее.