Страница: 1 |
Страница: 1 |
Вопрос: Как вытащить дату и время из биос ?
Добавлено: 19.03.09 16:15
Автор вопроса: sergey
Просьба помочь с вопросом:
Как вытащить дату и время из биос ?
Задал преподаватель и сказал что должен сделать сам, а не скатать из нета. В нете нашел примерно 5 методик, но это не то.. потому что мне надо разобраться нормально с этим вопросом, а не тупо скопировать. Не понятно:
1 Какие есть вообще варианты (1 копированием из адреса информации,а др. ?)
2 Откуда читается машинный алрес из которого берется информация...
3 Как это зависит от версии windows или bios или производителя мат платы...
Подскажите книгу, где про это можно почитать ...
Ответы
Всего ответов: 10
Номер ответа: 1
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #1
Добавлено: 19.03.09 21:55
Твой преподаватель над тобой глумится На чем (каком языке) предполагается получать эти данные и на какой платформе? Если ты в windows, то опосредованно время биос можно получить через API: GetSystemTime/GetLocalTime в структуру SYSTEMTIME по ссылке на любом языке программирования, способном работать с API. Есть собсоб уровнем чуть пониже: ZwQuerySystemTime, тоже опосредованно, только через базовую системную службу режима ядра. Здесь нужны Windows и языки, способные работать с DDK: С/C++/ассемблер. Реально функции GetSystemTime и GetSystemTimeAsFileTime осуществляют чтение из страницы KUSER_SHARED_DATA. Более низкий уровень - на ассемблере из под DOS - вызов функций биос - сам этим не занимался, т.к. это мне неинтересно, но накопать информацию по вызову функций биос не составляет труда. Собственно ты сам должен определиться с этим вопросом и выбрать путь для себя.
Номер ответа: 2
Автор ответа:
sergey
Вопросов: 6
Ответов: 17
Профиль | | #2
Добавлено: 20.03.09 10:07
Преподаватель не ставил ограничений по языку программирования. Я имею небольшой опыт программирования на Visual basic, delphi, turbo pascal. Требование к программе: Надо поменять системное время на компьютере, но время необходимо взять из BIOS. ОС windows.
Не понял опосредованно это как ?
Думаю что с API еще есть у меня шанс разобраться, а вот как с С++ не знаю..
Номер ответа: 3
Автор ответа:
sergey
Вопросов: 6
Ответов: 17
Профиль | | #3
Добавлено: 20.03.09 10:55
а функция Now, которая возвращает текущую дату и время для местной временной зоны.
Возвращенный тип TDateTime может быть использован и показан многими SysUtil и DateUtils процедурами
Из Bios берет время ??
Номер ответа: 4
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #4
Добавлено: 20.03.09 12:40
Вот, сделал с помощью GetLocalTime и SetLocalTime http://mc-black.narod.ru/wrk/clpbrd02.png
Сама программка: http://mc-black.narod.ru/wrk/Project09.exe Понравилось - пиши в почту, мой адрес в профиле.
Номер ответа: 5
Автор ответа:
sergey
Вопросов: 6
Ответов: 17
Профиль | | #5
Добавлено: 20.03.09 13:06
Спасибо... пока хочу сам поковыряться.. созрел уже
Буду использовать функции now и SetLocalTime.
Номер ответа: 6
Автор ответа:
sergey
Вопросов: 6
Ответов: 17
Профиль | | #6
Добавлено: 20.03.09 13:12
В qci кинул предложение .. .
Номер ответа: 7
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #7
Добавлено: 20.03.09 13:24
Ну блин, тяга к знаниям поощряется Вот тебе объявления нужных функций
Вот так получаешь дату и время из bios через интерфейсы Винды:
А вот так задаешь другое ввремя:
"Что всегда было на пол шестого" )))
Номер ответа: 8
Автор ответа:
sergey
Вопросов: 6
Ответов: 17
Профиль | | #8
Добавлено: 20.03.09 13:35
Спасибо .. исчерпывающая информация
есть еще вопрос по С++ который сам не одолею.. готов заплатить за консультацию ..
zwezda-11@mail.ru
Номер ответа: 9
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #9
Добавлено: 20.03.09 13:50
Пожалуйста.
Номер ответа: 10
Автор ответа:
SergeyZuzic
ICQ: 474690219
Вопросов: 5
Ответов: 155
Web-сайт:
Профиль | | #10
Добавлено: 31.03.09 08:26
GetLocalTime из API