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

Вниз

Задача взаимодействия различных программных модулей системы...   Найти похожие ветки 

 
Makhanev Alexander   (2007-02-15 20:50) [0]

Есть 1 комп.
Он может быть как terminal"кой, так и обычным пк.

На нём я должен запускать под каждым залогиненным юзером свой процесс.

Этот процесс должен иметь права записи в некую папку.

Еще есть служба, которая мониторит эту(и) папку(и) и что-то делает с её файлами.

Процессов может быть много.

А желательно чтоб общая папка (куда что-то пишут процессы) была одна (напр. app data\all users\..).

Пока есть 2 варианта решения со своими плюсами и минусами:

Вариант1:
- процесс запускается под system. его запускает служба. служба ловит logon event (dll"ка, зареганная в винлогон секции реестра) и запускает процесс под сессией юзера.

Плюс:
-процесс имеет права на записи в общую папку

Минус:
-неясно как стартовать процесс под учеткой юзера. Т.е. в случае с terminal"кой надо ж понимать под которым юзером запустится процесс...
-logon event будет ловиться только после перезагрузки компа (что с терминалкой фигово)

Вариант2:
- процесс запускается под юзером. его запускает винда из Run"а реестра.

Плюс:
- всё ясно с запуском

Минус:
- ниче не ясно с тем, куда писать файлы, (юзер не локал админ). Если пишем в свою app data, то службе придется неудобно бегать по всем app dataм и собирать файло.

И еще:
-хотелось бы иметь возможность запуска процессов из службы "на лету", чтоб не надо было перелогиниваться...  реально?
-было б круто, если б можно было объеднить процессы в одну службу. но специфика процесса такова, что он работает с окнами каждого юзера. такое реально из службы (видеть все окна всех юзеров и т.п.) ?


 
Makhanev Alexander   (2007-02-15 21:14) [1]

вспомнил что в Documents and Settings\All Users\Application Data\ выставлены особые разрешения и дюбой юзер может туда писать файло, но не править чужое.

это в принципе вполне устраивает.

НО - вопрос про запуск "на лету" и про единую службу не снят.

Реально ли вообще сделать такую службу, которая б, например, понимала getforegroundwindow для каждого юзера ?

Т.е. у меня на терминалке 10 юзеров и 1 служба может сказать какое окно активно у каждого из них.



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

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

Наверх




Память: 0.47 MB
Время: 0.044 c
15-1173851580
Mozart
2007-03-14 08:53
2007.04.08
Непонятный сбой Excel...


2-1174149356
Malik
2007-03-17 19:35
2007.04.08
Вопрос про канву принтера


15-1173122947
DeadMeat
2007-03-05 22:29
2007.04.08
64 битная *.dll


11-1152777666
oleg_l_k
2006-07-13 12:01
2007.04.08
Backup для БД на FireBird 1.0 (KOLIBServ)


15-1173764696
Knight
2007-03-13 08:44
2007.04.08