![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Часы [D6, Win95/98, WinME, NT4, Win2k, WinXP]
REA © (2002-09-12 17:34:00)Задача: синхронизировать таймера компьютера и некого устройства.
Вопрос: как получить текущее время в Win32 (желательно с миллисекундами или дождаться перехода через секунду)? Стандартная функция Time akaGetSystemTime()возвращает то время, которое в правом углу, а не то, которое в CMOS. Под WinXP к порту CMOS не добраться. Драйвер часов писать не охота :)
REA (2002-09-12 18:18:00) [1]Я подозреваю что нигде она его потом и не берет. После суток работы в W98 расхождение уже приличное.
А как декодировать я уж и сам бы разобрался.
Евген (2002-09-12 18:01:00) [2]P.S. А декодировать время можно так:
...
Hour, Min, Sec, MSec :Word;
...
procedure TForm1.Timer1Timer(Sender: TObject);
begin
DecodeTime(Time, Hour, Min, Sec, MSec);
end;
Евген (2002-09-12 17:56:00) [3]А ты считаешь, что время в CMOS и время винды отличаеться?
Тогда попробуй при загрузке поменять время в CMOS скажем на час вперед и посмотри какое время будет в винде. Можешь и наоборот попробовать.
Сей незатейливый эксперемент показывает синхронность времени CMOS и винды, а иначе где бы винда брала время после загрузки?