Запуск службы в интерактивном режиме
Основное отличие пользовательского приложения от службы заключается в том, что после запуска приложение может требовать для продолжения работы дополнительных действий со стороны пользователя — например нажать кнопку или ввести команду. Для этого необходимо получить к нему доступ, что как оказывается, не так-то просто сделать.
Для того, чтобы запустить службу в интерактивном режиме, надо в оснастке Службы открыть ее свойства и на вкладке «Вход в систему» отметить галочкой «Разрешить взаимодействие с рабочим столом» (рис 10).
Рисунок 10 — Разрешение службе взаимодействовать с рабочим столом
Cлужба, запущенная в интерактивном режиме, открывается в изолированном сеансе (session 0). Попасть в этот сеанс можно только при помощи Службы обнаружения интерактивных служб (ui0detect), которая отслеживает запуск интерактивных служб на компьютере и выдает оповещение. В Windows 7\Server 2008 эта служба активна по умолчанию, а в Windows 8\Server 2012 она отключена и не отображается в графической оснастке Службы.
Для запуска данной службы необходимо разрешить запуск интерактивных служб на компьютере. Поэтому открываем редактор реестра, находим в разделе HKLM\System\CurrentControlSet\Control\Windows параметр типа DWORD с именем NoInteractiveServices и ставим его значение в 0 (рис 11).
Рисунок 11 — Разрешение запуска интерактивных служб в редакторе реестра
После чего открываем консоль PowerShell и запускаем службу обнаружения командой [6]: Start-Service -Name ui0detect (рис 12).
|
|
Рисунок 12 — Включение службы обнаружения
После того как служба обнаружения запущена, необходимо перезапустить службу notepad, и в полученном окне выбрать пункт «Посмотреть сообщение» (рис 13).
Рисунок 13 — Окно обнаружения запуска интерактивной службы
После попадаем в нулевой сеанс, в котором работает наше приложение. (рис 14)
Рисунок 14 — Нулевой сеанс
Дальше производим в нулевом сеансе необходимые действия и возвращаемся обратно.
ЗАКЛЮЧЕНИЕ
В заключении хочется отметить, что запуск приложения в качестве службы Windows в отличие от назначенных заданий работает постоянно, запускается при старте ПК и может контролироваться диспетчером служб Windows. Также сервис работает быстрее и занимает меньше памяти.
В данном курсовом проекте я рассмотрела, как можно создать службу, управлять ей и удалять ее. Также рассмотрела запуск службы в интерактивном режиме. И закрепила знания, получаемые в процессе изучения дисциплины, приобрела необходимые практические навыки самостоятельной работы с операционной системой Windows.
Дата добавления: 2021-07-19; просмотров: 241; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!