Всем добрый день! Вообщем меня можно поздравить, я наконец-то родил свой первый драйвер! Драйвер сам по себе простой, с помощью него можно считать или установить системное время в CMOS памяти. Вот только счастье получатся неполным, после установки времени в CMOS системное время Windows остается прежним. Пробовал разрешать прерывание по окончании смены времени, но результатов это не дало. Вообщем подскажите пожалуйста каким образом можно изменить время в Windows.
Так просто часы изменить нельзя. Тут даже проблема не в драйвере. Проблема в том, что пры запуске виндовса он делает виртуальные часы, т.е. ведёт отсчёт не читая смос используя прерывание как единицу измерения. Смос меняется,виртуальные часы - нет.
То что ты написал я уже понял. У меня следующие предложения: ведь при изменении времени в CMOS если разрешить вырабатывается аппаратное прерывание, но похоже Windows его не обрабатывает, то есть не выставляет виртуальное время по новому времени из CMOS, это меня сильно удивляет. Или просто подскажите API функцию которая заставляет переустановить виртуальное время.
Насколько я понимаю функция SetSystemTime сама устанавливает время в CMOS. Мне же нужна функция которая заставит Windows прочитать значение в CMOS и выставить виртуальное время по нему.