Форум: "Начинающим";
Текущий архив: 2012.04.01;
Скачать: [xml.tar.bz2];
ВнизПомогите разобраться с реестром windows 7 Найти похожие ветки
← →
tj.nelson (2011-12-13 18:43) [0]Здравствуйте. Пишу программу по контролю времени за ПК. Прописал в автозагрузку - работает. Но программу можно легко обмануть путем загрузки из безопасного режима, и перевода время и даты.
Теперь прописываю в ключ HKLM\Software\Microsoft\Windows NT\CurrentVersion\winlogon Shell := Explorer.exe, c:\proga.exe
Проблема:
В ХР работает только так, на отично...
Но а в Windows 7, вместо записи в ветку HKLM\Software\Microsoft\Windows NT.... записывает автоматически в
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT...
Подскажите, как этого избежать и записать все таки в HKLM\Software\Microsoft\Windows NT\CurrentVersion\winlogon???
P.S. Я честно обьяснил намеренья моей программы. Не надо говорить что я вирусописатель! Я на стороне добра и света
← →
Rouse_ © (2011-12-13 19:28) [1]
> Но программу можно легко обмануть путем загрузки из безопасного
> режима, и перевода время и даты.
Это так-же легко проверить, если постоянно записывать текущее время. Если откатили назад, то текущая дата будет меньше чем запомненное ранее число.
ЗЫ: для реестра выставляй флаг при открытии KEY_WOW64_32KEY
← →
Dennis I. Komarov © (2011-12-13 19:34) [2]А разве винда не ведет журналы со всеми вытекающими?
← →
Rouse_ © (2011-12-13 19:36) [3]
> А разве винда не ведет журналы со всеми вытекающими?
О переводе даты в биосе?
← →
tj.nelson (2011-12-13 19:50) [4]
> Это так-же легко проверить, если постоянно записывать текущее
> время. Если откатили назад, то текущая дата будет меньше
> чем запомненное ранее число.
> ЗЫ: для реестра выставляй флаг при открытии KEY_WOW64_32KEY
Если назад - легко, но а если вперед? ведь контроль будет выключатся на суботу или воскресенье!
2. На флаг Reg.Access := KEY_WOW64_64KEY Delphi 7 ругается как неизвестный идентификатор!
Что делать? Есть вариант:
Столбец Value...
KEY_WOW64_64KEY = $0100 (delphi)
KEY_WOW64_32KEY = $0200 (delphi)
НО, где находится Столбец Value? После var, как простое приравнивание или как констата?
← →
Rouse_ © (2011-12-13 19:59) [5]
> НО, где находится Столбец Value?const KEY_WOW64_32KEY = $0200;
← →
tj.nelson (2011-12-13 20:07) [6]Rouse_ спасибо, все работает! Ребят, спасибо всем!
← →
Дмитрий Белькевич (2011-12-13 20:31) [7]В качестве идеи - если комп в сети периодически синхронизировать время с сервером времени. Ручками или стандартно.
← →
Dennis I. Komarov © (2011-12-13 20:39) [8]
> Rouse_ © (13.12.11 19:36) [3]
>
> > А разве винда не ведет журналы со всеми вытекающими?
>
> О переводе даты в биосе?
ну...
> Пишу программу по контролю времени за ПК.
если тачка своя, то нечего там чужим делать, а если нет - "нечего" тут свои контроли разбрасывать...
А так - [7] самое оно, только не время синхрить, а серверу покрикивать "эээй, смотри... я работаю :)"
← →
Rouse_ © (2011-12-13 20:46) [9]
> Dennis I. Komarov © (13.12.11 20:39) [8]
> ну...
На скока я помню - нет :)
← →
Dennis I. Komarov © (2011-12-13 22:47) [10]
> Rouse_ © (13.12.11 20:46) [9]
А чего помнишь то? :)
← →
Rouse_ © (2011-12-13 22:54) [11]
> Dennis I. Komarov © (13.12.11 22:47) [10]
> А чего помнишь то? :)
Пфф, даже затрудняюсь ответить на такую постановку вопроса... Ну ты в принципе не стесняйся - evt файл с записью о изменении даты через биос выложи :)
← →
Dennis I. Komarov © (2011-12-13 23:02) [12]
> Rouse_ © (13.12.11 22:54) [11]
Ты [8] не дочитал.
← →
Rouse_ © (2011-12-13 23:07) [13]
> Dennis I. Komarov © (13.12.11 23:02) [12]
> Ты [8] не дочитал.
Дочитал конечно :)
1. ""нечего" тут свои контроли разбрасывать" - если эти "контроли" есть часть обеспечения защиты от недобросовестного пользователя, то все легитимно как в плане архитектуры, так и в плане закона :)
2. Сети нет
← →
Dennis I. Komarov © (2011-12-13 23:36) [14]так что мешает закрыть доступ к BIOS? Запретить загрузку с др. носителей. Опечатать корпус... Хотя для контроля времени - перебор...
2. Пишем не отметки времени, а тики работы (с подписью результатов)
← →
Rouse_ © (2011-12-13 23:45) [15]
> Dennis I. Komarov © (13.12.11 23:36) [14]
> так что мешает закрыть доступ к BIOS?
Эмм, я предполагаю что софтверным способом ничто не помешает :) Оп чем и спич...
> 2. Пишем не отметки времени, а тики работы
Ну раз речь зашла за биос - то это подразумевает ребут системы, ты о каких тиках речь ведешь? :)
← →
Dennis I. Komarov © (2011-12-14 00:04) [16]
> ты о каких тиках речь ведешь?
о софтверных, т.е. работает софт и тик, тик, тик...
← →
Rouse_ © (2011-12-14 00:09) [17]
> Dennis I. Komarov © (14.12.11 00:04) [16]
>
>
> > ты о каких тиках речь ведешь?
>
> о софтверных, т.е. работает софт и тик, тик, тик...
Оть эти оные тикать начинают как раз с начала ребута системы ;)
← →
Dennis I. Komarov © (2011-12-14 00:37) [18]от их счетаем, и подпись ставим, чтоб не ай-ай...
← →
Dimka Maslov © (2011-12-14 16:36) [19]Проверить факт перевода часов назад можно косвенно при помощи функции UuidCreateSequential. В GUID зашивается текущее время, серийный номер сетевой карты и некоторое число, суть которого не разглашается. Но как только время в компьютере было переведено назад (даже через биос) эта часть гуида (выделена жирным) увеличивается на единицу
{C55298E1-2657-11E1-9ED1-001CC0932ECC}
← →
Rouse_ © (2011-12-14 16:48) [20]
> Dimka Maslov © (14.12.11 16:36) [19]
Прикольно, откуда о данной особенности узнал? :)
← →
Dimka Maslov © (2011-12-14 16:52) [21]
> Прикольно, откуда о данной особенности узнал? :)
Не помню. Может сам допёр, когда изучал сущность гуидов. Может прочитал в книжке какой-то.
← →
Inovet © (2011-12-14 16:53) [22]> [19] Dimka Maslov © (14.12.11 16:36)
> эта часть гуида (выделена жирным) увеличивается на единицу
> {C55298E1-2657-11E1-9ED1-001CC0932ECC}
Интересно. А могут ведь и поменять алгоритм. И да, тоже интересно откуда узнал.
← →
Inovet © (2011-12-14 16:56) [23]А после чего должна увеличиться?
42EEE469-69CD-430B-AD63-319680BCADD9
0661DF09-D476-4D4A-BF2A-C67D6518D2DF
63E9B5E7-0206-44C9-BACB-32AA6D281279
66A45059-40BF-46FF-B3C3-9F9603E74F7C
4B66304D-2802-434F-B820-22C659CB0CF6
983DAF72-1C1A-4437-9404-0BE33ADFB3E8
AC8F1530-F0EB-43F1-94DF-510D50D5F344
D628EDEC-CECD-4F3D-98C0-410D8BDAF501
F0D2BA75-BB52-40A3-9219-C6A9F2872934
59A24FD9-4DA3-4D2E-A20D-731797F42219
← →
Dimka Maslov © (2011-12-14 16:57) [24]
> А могут ведь и поменять алгоритм.
Могут и меняют, но для функции UuidCreate. А вот для UuidCreateSequential не меняют (пока)
← →
Dimka Maslov © (2011-12-14 17:01) [25]
> Inovet © (14.12.11 16:56) [23]
UuidCreateSequentialи UuidCreate суть разные функции. Тем более всякие CreateGUID или нажатие Shift+Ctrl+G. Сама функция UuidCreateSequential в Delphi не прописана и требует динамической линковки RPCRT4.DLL
← →
Inovet © (2011-12-14 17:07) [26]> [25] Dimka Maslov © (14.12.11 17:01)
> Тем более всякие CreateGUID
Ага, я генерировал
CoCreateGuid
← →
Dimka Maslov © (2011-12-14 17:28) [27]
> Ага, я генерировал
> CoCreateGuid
Точно не знаю, но по-моему CoCreateGUID внутри себя вызывает UuidCreate, которая вызывает UuidCreateSequential и извращает результат при помощи MD5 или чего-либо подобного.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2012.04.01;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.003 c