Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 2000/XP » Разное - Windows XP. Назад в прошлое.

Ответить
Настройки темы
Разное - Windows XP. Назад в прошлое.

Новый участник


Сообщения: 7
Благодарности: 1

Профиль | Отправить PM | Цитировать


Здравствуйте. Есть задача, которую необходимо решить. Возможно, вы знаете как к ней подступиться.

Задача и информация к размышлению:
ОС Windows XP (коротко XP) позволяет устанавливать дату в пределах 2001-2099 год. Однако, если установить дату меньшую, чем 1 января 2001 года, то она продержится до первой перезагрузки. Задача состоит в том, чтобы найти у XP файл(ы), в которых прописана исходная дата (1 января 2001) и изменить её к примеру на 1 января 1950. Я уверен, что операционная система XP этого просто не заметит. Предугадывая ваши вопросы, сразу на них отвечу
1. Нет. Компьютер не имеет подключения к интернету
2. У меня установлена Windows XP, SP2, FAT32
3. Зачем это нужно? - Вопрос не по теме
Итак я предполагаю, что искомая дата находится в одном из загружаемых файлов. Вот заглянул в файл ntoskrnl.exe, который является ядром XP.
[ntoskrnl.exe]
...
RtlSecondsSince1970ToTime
RtlSecondsSince1980ToTime

RtlSetTimeZoneInformation

RtlTimeFieldsToTime
RtlTimeToElapsedTimeFields
RtlTimeToSecondsSince1970
RtlTimeToSecondsSince1980
RtlTimeToTimeFields

Что это? Просто информация или нечто большее?
Надеюсь на помощь специалистов.

Отправлено: 10:35, 08-02-2022

 

Аватара для Kirill_S

Ветеран


Сообщения: 2878
Благодарности: 413

Профиль | Отправить PM | Цитировать


Цитата echs:
она продержится до первой перезагрузки »
Вероятно дата из БИОСа?

-------
Я здесь не для того чтобы учить, а для того чтоб учиться.


Отправлено: 12:12, 08-02-2022 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


echs, если вам нужно запускать определенную программу с фейковой датой, можно применить бесплатную RunAsDate

-------
Осваиваю FreeBSD


Отправлено: 12:20, 08-02-2022 | #3


Новый участник


Сообщения: 7
Благодарности: 1

Профиль | Отправить PM | Цитировать


Kirill_S,
Биос тут ни причём. Хотя пробовал и через Биос, а также через командную строку и другими методами. Тут видимо дело вот в чём. Эта дата при перезагрузке компьютера, проходит проверку. Если она находится на интервале (2001; 2099), то ОС её не трогает. В противном случае происходит "обнуление" даты и устанавливается 1 января 2001 года.

Уважаемый dmitryst,
хочу сразу отметить, что моя задача никак не связана с запуском какой-либо программы. Мне нужно фактически установить местонахождение даты "1 января 2001". Чудес не бывает. Где-то она прописана в Windows XP. Сложность задачи в том, что я не знаю где. Именно это заставило меня обратиться на форум, где, я полагаю, есть специалисты знающие Windows XP намного лучше меня.

Отправлено: 13:17, 08-02-2022 | #4


Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


echs, попробуйте в ядре поискать магическое число 978307200 (десятичное)

-------
Осваиваю FreeBSD


Отправлено: 14:43, 08-02-2022 | #5


Новый участник


Сообщения: 7
Благодарности: 1

Профиль | Отправить PM | Цитировать


dmitryst,
такого числа в ядре нет. Точнее, именно в десятичном виде (с пробелами и без) нет. Вероятно оно закодировано и что искать непонятно.

Отправлено: 16:27, 08-02-2022 | #6


Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


echs, попробуйте 0х 3A4F C880. Точнее, 80C84F3A, если я ничего не напутал.

-------
Осваиваю FreeBSD


Отправлено: 17:55, 08-02-2022 | #7


Новый участник


Сообщения: 7
Благодарности: 1

Профиль | Отправить PM | Цитировать


dmitryst,
этого числа я тоже не обнаружил. Возможно мы ищем не в том файле. Мне тут пришла в голову ещё одна мысль. А что если отсчёт даты идёт с какого-то года? Например 1980 (или 1970) - начало отсчёта времени вообще. Тогда 2001 год может быть обозначен числом 21? В общем тут есть над чем подумать...

Отправлено: 19:57, 08-02-2022 | #8


Аватара для Grabber2006

Ветеран


Сообщения: 4438
Благодарности: 980

Профиль | Отправить PM | Цитировать


В Линуксе за ноль было раньше принято 1 января 1970 года, при этом время считалось в секундах от этой даты. Возможно, что в Windows похожая ситуация.
Подробнее здесь.

Отправлено: 21:58, 08-02-2022 | #9


Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


Grabber2006, дык, я почему предложил 978307200 - это как раз *nix time - количество секунд, прошедших с 1 янв. 2001г.
Цитата echs:
RtlTimeToSecondsSince1970
RtlTimeToSecondsSince1980 »
Для RtlTimeToSecondsSince1970 это как раз оно(может быть шестнадцатеричным).
Цитата Grabber2006:
Возможно, что в Windows похожая ситуация. »
да, но если учесть, что в Excel в свое время дату хранили не как у всех, а в своем формате (сэкономив байт памяти, но создав забавный глюк , который были вынуждены повторять создатели аналогичных программ, дабы сохранить совместимость), то не исключено, что дата/время в ядре тоже "не как у всех".
Цитата echs:
начало отсчёта времени вообще »
это *nix-time, - количество секунд, прошедших с 1 янв. 1970г. Вот конвертер, можете поиграться стартовой датой, напр., 1 янв. 1980г.
echs, чем ковыряете ядро? Дебаггером? Помнится, там надо в шестнадцатеричном виде менять старшие/младшие байты местами, т.е. число 0x0102 надо искать как 0x0201. Коллеги, поправьте, если я неправ

-------
Осваиваю FreeBSD


Отправлено: 09:24, 09-02-2022 | #10



Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 2000/XP » Разное - Windows XP. Назад в прошлое.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Темы и Стили - Вперёд в прошлое Alik-book Оформление Windows 11/ 10 / 8 / 7 / Vista 0 20-12-2019 21:34
Назад в прошлое, топовые процессоры AMD 6000+ virus3003 Процесcоры 7 06-03-2015 12:42
Назад в прошлое: Интернет-архив позволяет запускать старые игры в браузере OSZone News Новости информационных технологий 0 28-12-2013 18:30
Windows Phone 7 - ни шагу назад OSZone News Новости и события Microsoft 0 07-03-2010 04:30
Использование - [решено] Неделю назад купил в магазине OEM XP SP3, хочу использовать 2 раза vl1639 Лицензирование продуктов Microsoft 8 03-02-2009 09:33




 
Переход