Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запись в реестр из сервиса


Laim ©   (2004-11-29 04:53:00) 

Почему не получается сделать запись из СЕРВИСА в ветку HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer, пишится почему-то в HKEY_USERS\.Default? Из простой программы все нормально, правда, если программу запускает сервис, то она тоже не туда пишет!!!


novice_man   (2004-11-29 06:49:00) [1]

Вот еще ссылка на форум где был вопрос о запуске ПРОГРАММЫ а не сервиса :(, но можети поможет разобраться
http://delphimaster.ru/cgi-bin/forum.pl?id=1100614746&n=5


novice_man   (2004-11-29 06:44:00) [2]

Если необходимо получить как имя пользователя так и имя домена для текущего потока, то сначала, при помощи функции GetTokenInformation надо распаковать пользовательский идентификатор (SID) - это и есть имя ключа в реестре в корне HKEY_USERS\из потока. А затем вызвать функцию LookupAccountSid, чтобы получить имя учётной записи и имя домена, связанные с этим SID.


novice_man   (2004-11-29 06:31:00) [3]

Где то видел в форуме (не оставил ссылки) как запускать приложение от имени текущего (не обязательно) пользователя.

Как вариант: создать файл из своей программы после загрузки пользователя (*.reg) и запустить?


Laim   (2004-11-29 06:04:00) [4]

Я знаю, что сервисы запускаются еще до входа пользователя в систему, и поэтому никакой речи о HKCU не может быть. Но после входа в систему можно же узнать пользователя и как-нибудь получить доступ к настройке под его профилем?
P/S: пишу прогу для блокировки запуска програм, и надо иметь доступ именно к этому разделу для каждого пользователя. Может можно как-нибудь запускать программу с правами администратора?


novice_man   (2004-11-29 05:26:00) [5]

HKEY_CURRENT_USER

Данный раздел является корневым для данных настройки пользователя, вошедшего в систему в настоящий момент. Здесь хранятся папки пользователя, цвета экрана и настройки панели управления. Эти данные называются профилем пользователя.

HKEY_USERS

Данный раздел содержит все профили пользователей компьютера. HKEY_CURRENT_USER является подразделом HKEY_USERS.

HKEY_LOCAL_MACHINE

Раздел содержит данные настройки, относящиеся к данному компьютеру (для всех пользователей).

HKEY_CLASSES_ROOT

Данный раздел является подразделом HKEY_LOCAL_MACHINE\Software. Хранящиеся здесь сведения обеспечивают открытие необходимой программы при открытии файла с помощью проводника.

HKEY_CURRENT_CONFIG

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

"Является подразделом" - читай виртуальный раздел - ссылка на какой то физичекий подраздел.

Я нашел инфу по работе с реестром минут за 10, когда приспичело поработать с реестром ;).


novice_man   (2004-11-29 05:14:00) [6]

Посмотри кто является владельцем запущенного сервиса (надеюсь у вса w 2000 или ХР(NT)) если система, то какой "HKEY_CURRENT_USER" для системы? Это вроде виртуальная ветка доступная для текущего пльзователя.


Наверх

Титульная страница Поиск, карта сайта Написать письмо