Форум: "Основная";
Текущий архив: 2007.04.08;
Скачать: [xml.tar.bz2];
ВнизЗадача взаимодействия различных программных модулей системы... Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.042 c