Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
14-1103720342
AlexG
2004-12-22 15:59
2005.01.16
Срочно!!! Нужна работа с з/п 900 уе


1-1104831644
Dammit
2005-01-04 12:40
2005.01.16
Как создать обработчик события при нажатии на кнопки Развернуть?


1-1104386706
Бизон
2004-12-30 09:05
2005.01.16
Свой хелп


14-1104311035
Егор
2004-12-29 12:03
2005.01.16
Настолные игры для локальки


1-1104440915
Kolan
2004-12-31 00:08
2005.01.16
Как проверить истек ли TimeOut при работе с портом




   Наверх