Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
| Snake_B |
29.04.2009 8:36
Сообщение
#1
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 72 Пол: Мужской Репутация: 0 |
Не могу разобраться как считать из реестра даные часовых поясов о датах перехода на летнее/зимнее время.
Хранятся тут: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\ Параметр TZI, в reg_binary... |
![]() ![]() |
| volvo |
2.09.2010 12:58
Сообщение
#2
|
|
Гость |
|
| Snake_B |
2.09.2010 13:20
Сообщение
#3
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 72 Пол: Мужской Репутация: 0 |
Внимание, вопрос: А что тебе возвращает GetTimeZoneInformation в поле StandardName, можно посмотреть? Сделай просто вот так: и прилепи сюда картинку... не-а.... не то она возвращает... но всё, вопрос вроде закрыт... сделал через "LocalFileTimeToFileTime" (Kernel32.lib)... там на скриншоте виден код... надо только ещё проверить учитывает ли она этот DYNAMIC_TIME_ZONE_INFORMATION, а так всё работает... |
| Snake_B |
3.09.2010 21:46
Сообщение
#4
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 72 Пол: Мужской Репутация: 0 |
но всё, вопрос вроде закрыт... сделал через "LocalFileTimeToFileTime" (Kernel32.lib)... там на скриншоте виден код... надо только ещё проверить учитывает ли она этот DYNAMIC_TIME_ZONE_INFORMATION, а так всё работает... м-да... рано я обрадовался... "LocalFileTimeToFileTime" это вот чудо для расчета времени UTC отнимает разницу с UTC которая в заданном у пользователя поясе СЕЙЧАС, при чем не зависимо от даты... т.е. если сейчас летнее время и разница +3, то она выдаст UTC = LocalTime-3... даже если мы её зададим дату после того когда уже должен быть переход на зимнее время и разница будет +2... вопросы... 1. такая вот функция const DLL = 'ntdll.dll'; function RtlLocalTimeToSystemTime(LocalTime: LongInt; SystemTime: LongInt) : NTSTATUS; stdcall; external DLL name 'RtlLocalTimeToSystemTime'; как мне преобразовать TDateTime в LongInt ? если и эта не сработает, то видимо прийдётся брать GetTimeZoneInformation... |
Snake_B Считывание даных часовых поясов из реестра... 29.04.2009 8:36
Ozzя Взято из ДРКБ
Возможно, этот код сможет Вам помочь... 29.04.2009 10:07
Snake_B
Взято из ДРКБ
Возможно, этот код сможет Вам помоч... 29.04.2009 18:28
volvo Snake_B, зачем тебе реестр? Вызывай GetTimeZoneInf... 29.04.2009 19:24
Snake_B
Snake_B, зачем тебе реестр? Вызывай GetTimeZoneIn... 1.05.2009 22:43
Snake_B
Snake_B, зачем тебе реестр? Вызывай GetTimeZoneIn... 1.09.2010 23:29
volvo И с какого такого времени в реестре хранится эта и... 1.05.2009 22:58
Snake_B
И с какого такого времени в реестре хранится эта ... 2.05.2009 9:34
volvo Ну, смотри... Ты сам хотел читать из реестра (на ф... 2.05.2009 11:17
Snake_B
Ну, смотри... Ты сам хотел читать из реестра (на ... 2.05.2009 19:46
volvo Как обычно, только тебе придется сначала еще и тип... 2.09.2010 1:43
Snake_B
Как обычно, только тебе придется сначала еще и ти... 2.09.2010 1:52
Lapp а как этот параметр приравнять к NULL?
А поставить... 2.09.2010 2:44
volvo Андрей, все-таки, nil, а не NULL :)
Snake_B
Я ж г... 2.09.2010 9:27
Lapp Андрей, все-таки, nil, а не NULL :)фу ты ну ты..... 2.09.2010 9:41
Snake_B
Андрей, все-таки, [b]nil, а не NULL :)
ну, вот ... 2.09.2010 10:39
volvo
Ну, и я попробовал - компилятор это сожрал запрос... 2.09.2010 11:01
Snake_B
Ну, и я попробовал - компилятор это сожрал запрос... 2.09.2010 11:05
volvo не сработает однозначно. Ибо прототип неправильный... 3.09.2010 22:20
Snake_B
не сработает однозначно. Ибо прототип неправильны... 3.09.2010 22:42
Snake_B ну... у меня опять вопросик...
вот собственно код:... 9.09.2010 2:54
Snake_B
ну... у меня опять вопросик...
вот собственно код... 9.09.2010 20:56![]() ![]() |
|
Текстовая версия | 8.12.2025 22:10 |