RegOpenKey()
От: ServerMouse Беларусь  
Дата: 26.07.01 07:30
Оценка:
Hi, ALL!
Почему сабж хорошо работает в апликейшине, а в сервисе(NT) тотже код возвращает ошибку 2 (файл не найден)?
Если человек программист, то это надолго.
Re: RegOpenKey()
От: Sasparella США  
Дата: 26.07.01 08:28
Оценка:
Здравствуйте ServerMouse, вы писали:

SM>Hi, ALL!

SM>Почему сабж хорошо работает в апликейшине, а в сервисе(NT) тотже код возвращает ошибку 2 (файл не найден)?

А может вы открываете ключ пользовательского профайла, который до логона не подгружен?

Саша.
Re[2]: RegOpenKey()
От: ServerMouse Беларусь  
Дата: 26.07.01 09:49
Оценка:
S>А может вы открываете ключ пользовательского профайла, который до логона не подгружен?


Вообщето я сервис запускаю вручную, уже под админом. Отлаживаю ещё... :-)
Если человек программист, то это надолго.
Re[3]: RegOpenKey()
От: Sasparella США  
Дата: 26.07.01 10:08
Оценка:
Здравствуйте ServerMouse, вы писали:

S>>А может вы открываете ключ пользовательского профайла, который до логона не подгружен?



SM>Вообщето я сервис запускаю вручную, уже под админом. Отлаживаю ещё... :-)


Но он же все равно из под учетной записи SYSTEM запускается? Это в свойствах сервиса в контрол панель устанавливается если я ничего не напутал.

В общем я пытался сказать что читать в сервисе из например HKEY_CURRENT_USER небезопасно....


Саша.
Re[3]: RegOpenKey()
От: ServerMouse Беларусь  
Дата: 26.07.01 15:52
Оценка:
Неужели нет нормального способа? Не запускать же из-за этого внешнюю программу, к тому же она наверное тоже запустится под SYSTEM. Тут народ какие-то пайпы советовал... А чего это такое?
Если человек программист, то это надолго.
Re[4]: RegOpenKey()
От: Alex Fedotov США  
Дата: 26.07.01 17:00
Оценка:
Здравствуйте ServerMouse, вы писали:

SM>Неужели нет нормального способа? Не запускать же из-за этого внешнюю программу, к тому же она наверное тоже запустится под SYSTEM. Тут народ какие-то пайпы советовал... А чего это такое?


Не должен сервис лезть в HKEY_CURRENT_USER по определению. Такая необходимость
как правило является признаком ущербного дизайна.

Смотри, однако

Q199190 HOWTO: Reference Another User's Hive Through HKEY_CURRENT_USER
http://support.microsoft.com/support/kb/articles/Q199/1/90.asp
-- Alex Fedotov
Re[5]: RegOpenKey()
От: ServerMouse Беларусь  
Дата: 26.07.01 18:28
Оценка:
Здравствуйте Alex Fedotov, вы писали:


AF>Не должен сервис лезть в HKEY_CURRENT_USER по определению. Такая необходимость

AF>как правило является признаком ущербного дизайна.

Программа для удалённого управления компьютером в инеткафе. Сервис необходим для того, чтобы держать связь до логона, а также, чтобы юзер не смог убить каким-либо образом процесс. В реестр лезу что-бы можно было сменить параметры текущей заставки.
На Ваш взгляд можно было бы сделать проще?
Если человек программист, то это надолго.
Re[6]: RegOpenKey()
От: Alex Fedotov США  
Дата: 27.07.01 03:46
Оценка:
Здравствуйте ServerMouse, вы писали:

SM>Программа для удалённого управления компьютером в инеткафе. Сервис необходим для того, чтобы держать связь до логона, а также, чтобы юзер не смог убить каким-либо образом процесс. В реестр лезу что-бы можно было сменить параметры текущей заставки.


заставка = screen saver, я правильно понимаю?

SM>На Ваш взгляд можно было бы сделать проще?


Да нет, все логично. Просто обычно функциональность сервисов не привязана к наличию интерактивного пользователя, и когда некоторые персоны пытаются искусственно такую зависимость ввести it really pisses me off. У вас другой случай.

Сервис отслеживает как-нибудь вход и выход интерактивного пользователя? Если еще не отслеживает, то теперь это придется сделать, а получив SID интерактивного пользователя
писать в HKEY_USER\<sid> а не в HKEY_CURRENT_USER.
-- Alex Fedotov
Re[7]: RegOpenKey()
От: ServerMouse Беларусь  
Дата: 27.07.01 07:33
Оценка:
Здравствуйте Alex Fedotov, вы писали:

AF>Сервис отслеживает как-нибудь вход и выход интерактивного пользователя?

А это как можно осуществить?

AF>писать в HKEY_USER\<sid> а не в HKEY_CURRENT_USER.

Уже пишу, но конечно SID хотелось бы получать, а не привязываться жёстко.
Если человек программист, то это надолго.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.