Отслеживание перевода часов
От: BigMak  
Дата: 01.08.02 10:29
Оценка:
Всем добрый день!

А не подскажут ли мне как грамотно отслеживать перевод времени с зимнего на летнее и наоборот на работающей машине? Когда машина выключена тако вопрос не стоит.
Когда просто переводится время, например с помощью встроенных часов, они(часы) рассылают сообщение WM_TIMECHANGE. А вот при переходе с зимнего на летнее такого не происходит. Как быть?
Re: Отслеживание перевода часов
От: Eugene  
Дата: 01.08.02 11:14
Оценка:
Здравствуйте BigMak, Вы писали:

BM>Всем добрый день!


BM>А не подскажут ли мне как грамотно отслеживать перевод времени с зимнего на летнее и наоборот на работающей машине? Когда машина выключена тако вопрос не стоит.

BM>Когда просто переводится время, например с помощью встроенных часов, они(часы) рассылают сообщение WM_TIMECHANGE. А вот при переходе с зимнего на летнее такого не происходит. Как быть?

Как вариант: преиодически считывать время и отслеживать момент изменения поля tm_isdst структуры tm:

time_t t;
if (localtime(time(&t))->tm_isdst)
  ;// летнее время (если строго - надо проверить еще -1)
else
  ;// стандарное время
Don't trouble trouble until trouble troubles you
Re: Отслеживание перевода часов
От: achp  
Дата: 01.08.02 11:14
Оценка:
Здравствуйте BigMak, Вы писали:

BM>А не подскажут ли мне как грамотно отслеживать перевод времени с зимнего на летнее и наоборот на работающей машине? Когда машина выключена тако вопрос не стоит.

BM>Когда просто переводится время, например с помощью встроенных часов, они(часы) рассылают сообщение WM_TIMECHANGE. А вот при переходе с зимнего на летнее такого не происходит. Как быть?

Получить информацию о часовом поясе, вычислить день и время перехода, заснуть до наступления этого времени, затем проснуться и что-то сделать.
Re[2]: Отслеживание перевода часов
От: BigMak  
Дата: 01.08.02 11:18
Оценка:
Здравствуйте achp, Вы писали:

A>Получить информацию о часовом поясе, вычислить день и время перехода, заснуть до наступления этого времени, затем проснуться и что-то сделать.


Наверное я так и поступлю, только сюда придется добавить отслеживание изменения информации о TimeZone.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.