![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здравствуйте. Пишу программу по контролю времени за ПК. Прописал в автозагрузку - работает. Но программу можно легко обмануть путем загрузки из безопасного режима, и перевода время и даты.
Теперь прописываю в ключ 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. Я честно обьяснил намеренья моей программы. Не надо говорить что я вирусописатель! Я на стороне добра и света ![]() |
|
#2
|
|||
|
|||
|
Ну так используй OpenKey.
Код:
var
Reg: Tregistry;
begin
Reg:= TRegIniFile.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey('Software',true);
Reg.OpenKey('Microsoft',true);
Reg.OpenKey('Windows NT',true);
//-//-//-//
end;Самостоятельно оно не может переходить куда вздумается. Ищи ошибку в коде. |
|
#3
|
|||
|
|||
|
Цитата:
у меня реестр вызывается так: reg.RootKey:=HKEY_LOCAL_MACHINE; reg.OpenKey('SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon',true); reg.WriteString('Shell', reg1); Может из за того, что я использую одну строку вместо постоянного OpenKey! НЕТ Не из за этого...все равно идет переход в ветку Wow6432Node. А эта ветка не грузится в безопасном режиме Последний раз редактировалось tj.nelson, 13.12.2011 в 19:07. |
|
#5
|
|||
|
|||
|
DJ PhoeniX, извините если напрягаю, скажите пожалуйста, я пишу на седьмом дельфине, и оно ругается на Reg.Access := KEY_WOW64_64KEY, мол неизвестный идентификатор KEY_WOW64_64KEY...
Подскажите пожалуйста, как быть? Добавить какую-то библиотеку или эта версии делфи чрезвычайно устарела??? Последний раз редактировалось tj.nelson, 13.12.2011 в 19:30. |
|
#6
|
||||
|
||||
|
Столбец Value...
KEY_WOW64_64KEY = 0x0100 (с/c++) = $0100 (delphi) KEY_WOW64_32KEY = 0x0200 (с/c++) = $0200 (delphi) Ну и я не знаю точно, поддерживает ли TRegistry эту фичу. Лучше бы, конечно, через WinAPI напрямую это делать. Последний раз редактировалось PhoeniX, 13.12.2011 в 19:32. |
|
#7
|
|||
|
|||
|
Цитата:
Теоретически может, но не она сама переходит куда вздумается, а windows перенаправляет её туда... Вопрос, как не дать windows перенаправлять из простой ветки в WoW6432None??? ![]() |
|
#8
|
||||
|
||||
|
|