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

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



Память: 0.45 MB
Время: 0.03 c
15-1173086418
Juice
2007-03-05 12:20
2007.04.08
Хелп файлы


2-1173879026
Vladisllav
2007-03-14 16:30
2007.04.08
Связь двух таблиц Ib в Delphi


9-1146952603
Медвед
2006-05-07 01:56
2007.04.08
Чем отличаются различные версии OpenGL?


15-1173902441
eXPell
2007-03-14 23:00
2007.04.08
От нечего делать....


2-1174029240
Нуб
2007-03-16 10:14
2007.04.08
dlina : array of integer;




   Наверх