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

Вниз

А что значит dwlowDateTime и dwhighDateTime в структуре FileTime?   Найти похожие ветки 

 
KoLega   (2002-04-10 17:44) [0]

А что значит dwlowDateTime и dwhighDateTime в структуре FileTime?
И как значение типа TdateTime перевести в dwlowDateTime и dwhighDateTime структурЫ FileTime ???
Спасибо.


 
SPeller ©   (2002-04-10 20:28) [1]

dwlowDateTime и dwhighDateTime это соответственно первые и вторые байты числа, которым представляется время.


 
KoLega   (2002-04-10 20:58) [2]

>> SPeller
первые и вторые байты... а по понятней можно??
Что такое первые байты числа, а что вторые??

Как они связаны с TDatatime??

Ответьте пожалуйста, мне нужно установить время на файл...это делается через SetFileTime(h,nil,nil,@t1), где t1 - структура FileTime
У меня есть значение Tdatatime , как мне его "воткнуть" в t1 ??
Спасибо.


 
Anatoly Podgoretsky ©   (2002-04-10 21:19) [3]

Младшая ии старшая часть 64 битного целого, а не байтов


 
SPeller ©   (2002-04-10 22:31) [4]

Anatoly Podgoretsky © (10.04.02 21:19)
В принципе это одно и то же. Я просто более крестьянским языком попытался выразиться.


 
ION T ©   (2002-04-10 22:55) [5]

Используй SystemTimeToFileTime() для конвертации......


 
Anatoly Podgoretsky ©   (2002-04-10 23:34) [6]

Тоесть как одно и тоже два байта и восемь


 
SPeller ©   (2002-04-11 01:32) [7]

Ну всмысле первые 4 и вторые 4 байта 8-ми байтного числа.


 
Anatoly Podgoretsky ©   (2002-04-11 08:26) [8]

Да, вариант представления Int64


 
KoLega   (2002-04-11 17:52) [9]

Спасибо всем! Особенно ION T ©!!!
А почему при использовании SystemTimeToFileTime()время всегда на 4 часа больше?? это глюк или что?


 
ION T ©   (2002-04-11 20:41) [10]

А вы случайно не забыли про локальные настройки - ведь время файла должно быть правильным (как в рекламк Бочкарева:) Вы вероятно живете во временном поясе со смещением в 4 часа, так что это ни в коем случае не глюк - так правильно.......но если надо, то можно выставлять время с учетом сего, чтобы Винда "скорректировала" в нужную сторону........


 
KoLega   (2002-04-11 23:06) [11]

>> ION T ©
У меня в настройках винды стоит час пояс Москва и время правильно показывает...а вот если любое время подаешь на вход:
SystemTimeToFileTime(st,t1);
SetFileTime(h,nil,nil,@t1);
то всегда время получается на 4 часа больше, а как можно програмно скоректировать??


 
ION T ©   (2002-04-11 23:40) [12]

Ну так правильно: +3 часа - Москва и +1 час - летнее время.

Ну скорректировать можно вычитанием текущего смещения времени (4 часа, но где-то в реестре читать надо) и установкой. По людски - отнимаешь 4 часа и ставишь. Но крайне не рекомендую так делать - представьте, что этот файл кто-то намылит в сша, там смещение другое(допустим -5 часов) и получится, что файл создан *через* те самые 4 часа, а на такое любой скандиск и половина антивирусов заругаются..........


 
Anatoly Podgoretsky ©   (2002-04-11 23:57) [13]

Обрати внимание не название функции SystemTime, а не LocalTime


 
KoLega   (2002-04-12 17:47) [14]

Спасибо всем!!! Вообщем я сделал так:
Вычислил разницу между начальной датой и полученной - это и есть корректировка в л. точке земного шара и в любое время !
>> ION T © весьма благодарен!:-)


 
Pat ©   (2002-04-12 18:49) [15]

А не проще корректировать время, используя GetLocalTime и GetSysytemTime?


 
KoLega   (2002-04-12 20:06) [16]

Спасибо Pat ©!!! Незнал, так конечно проще!!!Как код сокращается:-))



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

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

Наверх




Память: 0.5 MB
Время: 0.011 c
6-55237
Timon
2002-02-15 18:58
2002.06.17
Опять же сокеты


1-55172
Yuri Btr
2002-06-04 12:48
2002.06.17
Поменять главную форму...


3-55031
Z-man
2002-05-21 07:20
2002.06.17
Как написать Help для проги


1-55052
MARcoDEN
2002-06-01 10:56
2002.06.17
Поиск в реестре


3-55011
Dmitr
2002-05-22 09:21
2002.06.17
D6, ADO, управление транзакциями......