Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.16;
Скачать: CL | DM;

Вниз

Запись в реестр из сервиса   Найти похожие ветки 

 
Laim   (2004-11-29 04:53) [0]

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


 
novice_man ©   (2004-11-29 05:14) [1]

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


 
novice_man ©   (2004-11-29 05:26) [2]

HKEY_CURRENT_USER

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

HKEY_USERS

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

HKEY_LOCAL_MACHINE

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

HKEY_CLASSES_ROOT

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

HKEY_CURRENT_CONFIG

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

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

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


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

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


 
novice_man ©   (2004-11-29 06:31) [4]

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

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


 
novice_man ©   (2004-11-29 06:44) [5]

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


 
novice_man ©   (2004-11-29 06:49) [6]

Вот еще ссылка на форум где был вопрос о запуске ПРОГРАММЫ а не сервиса :(, но можети поможет разобраться
http://delphimaster.net/view/4-1100614746/



Страницы: 1 вся ветка

Текущий архив: 2005.01.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.548 c
3-1102582417
einsam
2004-12-09 11:53
2005.01.16
база данных в файлах *.dbw


1-1104133498
hgd
2004-12-27 10:44
2005.01.16
тип Extended


3-1102789459
Dell3r
2004-12-11 21:24
2005.01.16
Сетевая многопользовательская программа


10-1080311374
seacat
2004-03-26 17:29
2005.01.16
Midas и прокси


1-1103956071
Secam
2004-12-25 09:27
2005.01.16
Индексированный массив ?