![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
GetSystemTime возвращает не правильное время
@!!ex © (2006-09-15 20:34:00)Использую GetSystemTime чтобы получать время по UTC.
Собсвтенно для этого функция и предназначена.....
У меня (+4 GMT) все работает на ура......
Тестил все нормально...
Отослал проект тестерам(Питер +3 GMT)....
Баг.. GetSystemTime возвращает не правильное время.
Отнимает 4 часа вместо 3.......
Внепонятках... Облазил весь инет...
и гуглил и яндексил... эффекта ноль...
Есть предположение что это из-за перехода на летнее время...
Но как с этим боротся?
Anatoly Podgoretsky (2006-09-17 10:59:00) [1]Ketmar © (16.09.06 19:22) [24]
Второе работает с летнем/зимнем временем, поэтому оно ни как не может быть равным первому.
Anatoly Podgoretsky (2006-09-17 10:56:00) [2]UTC == GMT == Время по гринвичу
Откуда такой вывод сделан
Ketmar (2006-09-17 07:46:00) [3]скорее всего. ибо исходя из [0] -- не нравится именно сам факт наличия перехода.
Fay (2006-09-17 07:31:00) [4]2 Ketmar © (17.09.06 3:39) [31]
Я правильно понял, афтару нужно проголосовать?
Ketmar (2006-09-17 03:39:00) [5]что тут неясного? с переходами на летнее/зимнее. я тоже считаю, что эти переходы -- редкостный идиотизм. если какой-то кандидат пообещает это в Украине отменить -- нарушу свой принцип и пойду за него голосовать.
Германн (2006-09-17 02:38:00) [6]
> Fay © (17.09.06 02:02) [29]
>
...
> > Но как с этим боротся?
> С чем?!
>
Вот и я тоже не понимаю "с чем борется автор сабжа"?
Fay (2006-09-17 02:02:00) [7]Для проверки программы в часовом поясе Питера НИЧЕГО НИКУДА ОТСЫЛАТЬ НЕ НАДО.
> Есть предположение что это из-за перехода на летнее время...
Совершенно правильное предположение.
> Но как с этим боротся?
С чем?!
Ketmar (2006-09-16 19:25:00) [8]вообще -- ситуация прикольная, как всегда. функции, возвращающей GMT, в винде нет. но часовые пояса задаются со смещением именно от него. я понимаю, что традиция, но и путаница одновременно. %-)
@!!ex (2006-09-16 19:25:00) [9]Ketmar © (16.09.06 19:23) [25]
ниче. Бывает.
Это помогло посмотреть с другой стороны на себя. :)
Поскольку тоже пару раз резко отвечал на форумах, хотя это было не оправданно.
@!!ex (2006-09-16 19:24:00) [10]Понятно. Спасибо.
Ketmar (2006-09-16 19:23:00) [11]да, кстати: извиняюсь за резкий тон в начале. сейчас перечитал вопрос, и понял, что дурак тут на самом деле я -- "чукча не читатель, чукча писатель". отвечал не совсем на то, о чём спрашивали. %-)
Ketmar (2006-09-16 19:22:00) [12]> [22] @!!ex © (16.09.06 19:18)
"loosely defined" -- примерно "примерно то же самое". %-)
я же сказал -- разница глазом не заметна. но, в принципе, UCT может отличаться от GMT на интервал, не превышающий одной секунды. ну и -- заведуют этими временами разные конторы. вкратце -- так.
@!!ex (2006-09-16 19:19:00) [13]Кстати, серьезно, а то както с сарказмом получилось.
извиняюсь.
Действительно всегда думал что ЮТС и ГМТ - одно и тоже.
Было бы интересно узнать отличия.
@!!ex (2006-09-16 19:18:00) [14]Ketmar © (16.09.06 19:00) [20]
кстати, UTC -- это не GMT. впрочем, различие малозаметное глазом.
>MSDN>UTC-based time is loosely defined as the current date and time of day in Greenwich, England.
Наверно у меня трудности с переводом.
Не проведете ликбез студенту?
@!!ex (2006-09-16 19:04:00) [15]Функция GetSystemTime не учитывает переход на летнее время.
Это не баг, это фича.
Собственно я и пытаюсь узнать КАК это исправить.
не узнал.
Поэтому считаю время руками.
Ketmar (2006-09-16 19:00:00) [16]блин. ну что тут неясного? системе лучше знать, какое там время. если она что-то возвращает, то делает это правильно. неужели ты думаешь, что за столько лет никто бы не заметил баг в подобной функции?
кстати, UTC -- это не GMT. впрочем, различие малозаметное глазом.
@!!ex (2006-09-16 19:00:00) [17]Денег нет на йад.
Следующий.
PSPF2003 (2006-09-16 18:59:00) [18]Выпей йаду
@!!ex (2006-09-16 18:53:00) [19]Я думал над этим вариантом. Меня отговорили. Стенку жалко.
Ваши предложения?
PSPF2003 (2006-09-16 18:51:00) [20]Советую воспользоваться [1]