Запустить программу как службу
Перейти к содержимому

Запустить программу как службу

  • автор:

Запуск приложения как службы Windows

Запуск приложения как службы Windows

Службы Windows — запущенные в фоне приложения, которые работают независимо от пользователя компьютера, и управляются непосредственно самой операционной системой. По умолчанию, службами являются строго определенные приложения, однако, ничто не мешает пользователю создать их самому. Выполнить данную задачу можно несколькими способами — с использованием стандартных средств Windows, либо с использованием сторонней программы NSSM.

SC

Входящая в Windows программа SC позволяет легко создавать службы Windows, а так же проводить другие различные с ними манипуляции — удаление, отключение, включение, и т. д. Создается служба достаточно просто, для этого достаточно запустить командную строку от имени администратора, и выполнить там следующую команду:

sc create [ИМЯ СЛУЖБЫ] binPath=[ПУТЬ К ИСПОЛНЯЕМОМУ ФАЙЛУ] DisplayName=[ОТОБРАЖАЕМОЕ ИМЯ СЛУЖБЫ] type=own start=auto

Удаляется же служба еще проще:

sc delete [ИМЯ СЛУЖБЫ]

Однако, у данного метода есть один большой существенный недостаток — с помощью данной утилиты создать службу можно только из программы, которая поддерживает работу службой. По этому, запустить какое попало приложение как службу данным способом не получится — но, можно воспользоваться сторонней утилитой NSSM, о которой речь пойдет ниже.

NSSM

  1. Предположим, нужно создать службу для веб-сервера nginx под Windows. Для этого, запускаем командную строку с правами администратора, и переходим в директорию с распакованным исполняемым файлом nssm.exe.
  2. Затем выполняем команду, начинающую установку службы:
nssm install nginx
  • Откроется окно с настройками создаваемой службы.

    На самой первой вкладке «Application«, в строке «Path» задается путь к исполняемому файлу, «Startup Directory» — рабочая директория, а «Arguments» — параметры запуска. В самом низу расположена строка «Service Name«, где задается имя создаваемого сервиса.

    На вкладке «Details» можно задать имя, под которым будет отображаться создаваемая служба в списке служб, а так же описание службы, которое будет отображаться там же. В выпадающем списке «Startup Type» можно выбрать тип запуска службы.

    Вкладка «Log on» позволяет указать пользователя, под которым будет запускаться служба.Заполним все нужные поля и выбрав нужные настройки, остается только нажать кнопку «Install service«, для установки службы.
  • После нажатия кнопки «Install service«, служба будет создана, но при этом запустить её нужно будет вручную (либо перезагрузить компьютер, чтобы служба с параметром запуска «Auto» запустилась при его запуске).
  • Так же удалить службу можно с помощью команды в командной строке:

    nssm remove [ИМЯ СЛУЖБЫ] confirm

    Запустить программу как службу

    Новости смартфонов, гаджетов и компьютерного железа

    Запуск приложения как службы Windows

    Службы Windows — запущенные в фоне приложения, которые работают независимо от пользователя компьютера, и управляются непосредственно самой операционной системой. По умолчанию, службами являются строго определенные приложения, однако, ничто не мешает пользователю создать их самому. Выполнить данную задачу можно несколькими способами — с использованием стандартных средств Windows, либо с использованием сторонней программы NSSM.

    SC

    Входящая в Windows программа SC позволяет легко создавать службы Windows, а так же проводить другие различные с ними манипуляции — удаление, отключение, включение, и т. д. Создается служба достаточно просто, для этого достаточно запустить командную строку от имени администратора, и выполнить там следующую команду:

    sc create [ИМЯ СЛУЖБЫ] binPath=[ПУТЬ К ИСПОЛНЯЕМОМУ ФАЙЛУ] DisplayName=[ОТОБРАЖАЕМОЕ ИМЯ СЛУЖБЫ] type=own start=auto

    Удаляется же служба еще проще:

    sc delete [ИМЯ СЛУЖБЫ]

    Однако, у данного метода есть один большой существенный недостаток — с помощью данной утилиты создать службу можно только из программы, которая поддерживает работу службой. По этому, запустить какое попало приложение как службу данным способом не получится — но, можно воспользоваться сторонней утилитой NSSM, о которой речь пойдет ниже.

    NSSM

    NSSM — программа, предназначенная для создания служб из исполняемых файлов Windows, в том числе и из графических утилит, что ставит её на уровень выше средств от Microsoft. С её помощью можно запускать большинство приложений, даже которые рассчитаны на взаимодействие с пользователем.

    Скачать данную программу можно с её официального сайта — nssm.cc.
    На случай проблем с официальным сайтом, можно скачать программу с нашего сайта.

    В архиве для скачивания можно найти версию для 64-битной версии Windows (папка win64), для 32-битной (папка win32) и исходные коды приложения (папка src). Выбираем нужное приложение под разрядность своей системы, копируем его в удобное для вас место на жестком диске. Никакая установка приложения не требуется.

    1. Предположим, нужно создать службу для веб-сервера nginx под Windows. Для этого, запускаем командную строку с правами администратора, и переходим в директорию с распакованным исполняемым файлом nssm.exe.
    2. Затем выполняем команду, начинающую установку службы: nssm install nginx
    3. Откроется окно с настройками создаваемой службы.

    На самой первой вкладке «Application«, в строке «Path» задается путь к исполняемому файлу, «Startup Directory» — рабочая директория, а «Arguments» — параметры запуска. В самом низу расположена строка «Service Name«, где задается имя создаваемого сервиса.

    На вкладке «Details» можно задать имя, под которым будет отображаться создаваемая служба в списке служб, а так же описание службы, которое будет отображаться там же. В выпадающем списке «Startup Type» можно выбрать тип запуска службы.

    Вкладка «Log on» позволяет указать пользователя, под которым будет запускаться служба.Заполним все нужные поля и выбрав нужные настройки, остается только нажать кнопку «Install service«, для установки службы.

    4. После нажатия кнопки «Install service«, служба будет создана, но при этом запустить её нужно будет вручную (либо перезагрузить компьютер, чтобы служба с параметром запуска «Auto» запустилась при его запуске).

    Так же удалить службу можно с помощью команды в командной строке:

    nssm remove [ИМЯ СЛУЖБЫ] confirm

    Как установить программу в качестве службы

    Наверняка, многие сталкивались с ситуацией, когда есть необходимость запускать программу до входа пользователя в систему, но в установщике программы нет опции «Установить в качестве службы».

    Установка программы в качестве службы

    Первые 4 пункта понадобятся лишь в windows 8.1

    1 Вызовите боковую панель Windows 8.1. Для этого можно использовать комбинацию клавиш WIN+C.

    2 Выберите Поиск:

    install-as-service-021

    3 В поле поиска введите командная строка. В списке появится позиция Командная строка с системной иконкой.

    Нажмите по ней правой кнопкой мыши:

    install-as-service-022

    4 Выберите Запуск от имени администратора:

    install-as-service-023

    5 Нажмите Да:

    install-as-service-024

    6 В командной строке введите путь к программе, которую вы хотите установить в качестве службы, с ключом /installservice и нажать ENTER. Путь необходимо взять в кавычки.

    "C:\Program Files (x86)\HostMonitor\hostmon.exe" /installservice

    После нажатия на ENTER ответьте «Да» на запрос службы контроля учётных записей:

    install-as-service-031

    7 Если программа запросит учётные данные для запуска, как в нашем примере, введите реквизиты учётной записи администратора и нажмите ОК:

    install-as-service-032

    Далее, программа, которую вы установили в качестве службы, сообщит вам об успешной установке службы.

    У каждой программы это окно будет разным

    install-as-service-033

    Зайдите в службы (Выполнить — services.mcs — ENTER) и проверьте, что в списке присутствует только что установленная служба:

    install-as-service-034

    Удаление службы

    Процедура удаления службы схожа с установкой. Отличие лишь в том, что после пути к программе нужно указать ключ /uninstallservice.

    "C:\Program Files (x86)\HostMonitor\hostmon.exe" /uninstallservice

    + ENTER:

    install-as-service-041

    1 комментарий к “Как установить программу в качестве службы”

    Чушь это, правильно будет так
    sc.exe create hostmon type=own start=delayed-auto binPath=C:\Program Files (x86)\HostMonitor\hostmon.exe DisplayName=hostmon Ответить

    Запустить программу как службу

    [решено] Как запустить программу как службу

    Сообщения: 79
    Благодарности: 2

    Нужно на SBS 2003 sever запускать одну программу (которая раздает лицензии) как службу как это можно сделать?
    Суть в том что после перезагрузке сервера эта программа требует себя запустить чтобы раздавать лицензии ,а нужно сделать так что после перезагрузки не до ходя до окна логина и пароля программа сама запускалась как служба.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *