Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Дочерний процесс

23K
06 марта 2013 года
1_2
34 / / 09.01.2012
Доброе время суток! У меня такой вопрос: когда запускаешь приложение, то оно является дочерним для explorer, и когда завершаешь сеанс пользователя, это приложение закрывается. Как освободиться от материнства explorer`а, чтобы это приложение не завершалось?
1
06 марта 2013 года
kot_
7.3K / / 20.01.2000
Материнство, детство, проблемы матери и ребенка, эдипов комплекс. Что еще придумаешь? :)
Так как процесс запущен в сессии от имени пользователя, сессия которого завершена - то естественно и завершаются все процессы, которые с этой сессией связаны. Для того, что бы это было по другому - процесс должен быть запущен как сервис (с возможностью взаимодействия с рабочим столом или без него) - тогда он будет работать вне зависимости от сессии пользователя. Опять же надо в таком случае учитывать доступность ресурсов - например если твоей программе нужны окна (например) - то ты не сможешь работать без залогиненого пользователя. И т.д. Рекомендую обратиться к книге Руссиновича по внутреннему устройству Windows прежде чем проектировать подобное.
23K
06 марта 2013 года
1_2
34 / / 09.01.2012
А можно как нибудь обойтись без создания сервиса (ресурсы, например, окна не нужны)?
414
06 марта 2013 года
CassandraDied
763 / / 24.05.2012
Через task scheduler. От пользователя запускать wrapper, который запустит или добавит задачу основного приложения.
23K
06 марта 2013 года
1_2
34 / / 09.01.2012
Спасибо!
7
06 марта 2013 года
@pixo $oft
3.4K / / 20.09.2006
Цитата: kot_
если твоей программе нужны окна (например) - то ты не сможешь работать без залогиненого пользователя

Да ладно! А как же я после запуска системы и отображения окна ввода логина/пароля своё окошко делал, когда надо было реализовать подключение интернета через мою машину (роутера тогда ещё не было)?

Цитата: CassandraDied
Через task scheduler. От пользователя запускать wrapper, который запустит или добавит задачу основного приложения.

Куда он её запустит или добавит? Если ему нужно непрерывное функционирование, то TS ему сможет помочь только в том случае, если он позволяет запускать задачу от имени системы (давно им не пользовался, не помню таких подробностей). Так что без служб — никак

Цитата: 1_2
А можно как нибудь обойтись без создания сервиса?

Службы чем не устраивают? Никакого гемора же, работает от старта системы до завершения

414
06 марта 2013 года
CassandraDied
763 / / 24.05.2012
Цитата:
Куда он её запустит или добавит?


Wrapper добавить в шедулер и запускать его при старте системы. В чём может быть проблема? Не обязательно от имени системы, можно и LOCAL SERVICE. При завершении сеанса он не должен выгружаться.Или должен?

7
06 марта 2013 года
@pixo $oft
3.4K / / 20.09.2006
Видимо, всё-таки ПЗ позволяет такое. Ну я так и предполагал, ибо без возможности запуска от имени системы он был бы бедноват
Цитата: CassandraDied
Цитата:
Куда он её запустит или добавит?


Wrapper добавить в шедулер и запускать его при старте системы. В чём может быть проблема? Не обязательно от имени системы, можно и LOCAL SERVICE. При завершении сеанса он не должен выгружаться.Или должен?

Под «именем системы» я подразумевал все службы — они ж работают под системными учётными записями. И кстати, ЕМНИП, Local service и есть тот самый пользователь System, что в диспетчере задач отображается

414
06 марта 2013 года
CassandraDied
763 / / 24.05.2012
Не-не-не. Мне вот мой шедулер говорит, что может запустить от LOCAL SERVICE, NETWORK SERVICE и, о Аллах, от самого SYSTEM!
Так сейчас CCleaner работает, чтобы UAC обходить, это я у него подсмотрел.
1
06 марта 2013 года
kot_
7.3K / / 20.01.2000
Цитата: @pixo $oft
Цитата: kot_
если твоей программе нужны окна (например) - то ты не сможешь работать без залогиненого пользователя

Да ладно! А как же я после запуска системы и отображения окна ввода логина/пароля своё окошко делал, когда надо было реализовать подключение интернета через мою машину (роутера тогда ещё не было)?


Ишо? У тебя служба от духа святого запускалась?))

7
06 марта 2013 года
@pixo $oft
3.4K / / 20.09.2006
Это тут при чём? Ну если ты начнёшь толстить и подразумевать под залогиненным пользователем саму систему, то да — я эпично профэйлюсь. Но ТС-то имел в виду именно человекопользователей, а не программу, работающую 24/7 системные учётки. Служба ему нужна, а он ленится… Ну или не обязательно служба, но что-то, что стартует вместе с WinLogon'ом
1
07 марта 2013 года
kot_
7.3K / / 20.01.2000
ну прямо и толстить ))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог