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

Иногда может потребоваться взять исполняемый файл и зарегистрировать его в качестве службы Windows.
Для этого есть несколько способов, я обычно пользуюсь двумя из них.

Для создания и службы из командной строки можно использовать программу SC (Sc.exe). SC представляет из себя утилиту командной строки, которая реализует вызовы ко всем функциям интерфейса прикладного программирования (API) управления службами Windows. С ее помощью можно производить любые действия со службами — просматривать состояние, управлять (запускать, останавливать и т.п.), изменять параметры, а также создавать новые службы.

При создании службы с помощью SC нет необходимости вручную создавать записи в реестре и затем перезагружать компьютер, чтобы обеспечить обновление базы данных диспетчером служб. Также SC позволяет указать имя удаленного компьютера, что дает возможность управлять службами как на локальном, так и на удаленном компьютере.

Для создания нового сервиса запускаем команду Sc create. Она создает запись службы в реестре и в базе данных диспетчера служб. Sc create имеет следующий синтаксис:

Резко пропал Интернет, что делать? Нет доступных подключений + не запущена дочерняя служба

sc create [ServiceName] [binPath= ]

ServiceName — указывает имя, которое будет присвоено разделу службы в реестре. Имейте в виду, что это имя отличается от отображаемого имени службы (имени, которое отображается в оснастке «Services»);
binPath — указывает путь к исполняемому файлу службы.

Для примера создадим службу MyService, укажем отображаемое имя My New Service, зададим тип службы и поставим ее на авто-запуск:

Sc create MyService binPath=C:MyServiceMyService.exe DisplayName=″My New Service″ type=own start=auto

Затем откроем оснастку «Services» и посмотрим результат.

Sc1

Изменять параметры уже созданной службы можно командой Sc config. Например, мне не понравилось отображаемое имя службы и я хочу его изменить:

Sc config MyService DisplayName=»My Service»

Ну и полностью удалить службу можно вот так:
Sc delete MyService

Sc2

PowerShell может почти все, в том числе и управлять службами Windows. Создать новую службу можно с помощью командлета New-Service. Создадим такой же сервис, как и в предыдущем примере, только добавим к нему описание (Description):

PowerShell:

New-Service -Name MyService -BinaryPathName C:MyServiceMyService.exe` -DisplayName «My New Service» -Description «Very Important Service . »

Изменить параметры службы можно командлетом Set-Service:
PowerShell:
Set-Service -Name MyService -Description «Not Very Important Service» -StartupType Manual

Sc4

В принципе PowerShell имеет примерно такой же функционал как и Sc.exe, разве что позволяет добавить описание. А вот для удаления служб в PS простого способа нет, придется воспользоваться вот такой конструкцией:

Как запустить службу политики диагностики, если она не запущена

PowerShell:

(Get-WmiObject win32_service -Filter «name=`MyService`»).delete()

Поэтому лично я предпочитаю использовать Sc.exe.
Последнее редактирование: 21 Фев 2014

Dragokas

Angry
• Затем NSSM определяет все окна, созданные приложением, и посылает им сообщение WM_CLOSE, инициирующее выход из приложения;
• Третьим этапом NSSM вычисляет все потоки, созданные приложением, и отправляет им сообщение WM_QUIT, которое будет получено если приложение имеет очередь сообщений потока;
• И в качестве последнего средства NSSM может вызвать метод TerminateProcess(), принудительно завершив работу приложения.

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

Nssm2

По умолчанию при падении службы NSSM пытается рестартовать ее. На вкладке «Exit actions» можно изменить автоматическое действие при нештатном завершении работы приложения, а также выставить задержку перед автоматическим перезапуском приложения.

Nssm3

На вкладке «Input/Output (I/O)» можно задать перенаправление вводавывода приложения в указанный файл.

Nssm4

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

Nssm5

Также можно не пользоваться графической оболочкой и сразу создать службу в консоли такой командой:

nssm install notepad «C:Windowssystem32notepad.exe»

Управление службой

После создания службы с помощью NSSM зайдем в оснастку Services и найдем службу notepad. Как видите, с виду она ничем не отличается от остальных служб, мы также можем ее запустить, остановить или изменить режим запуска. Однако обратите внимание, что в качестве исполняемого файла указан nssm.exe.

Nssm6

А если зайти в Task Manager, то мы увидим следующую картину: в качестве основного (родительского) процесса запущен NSSM, служба notepad запущена как его дочерний процесс, и уже в этом дочернем процессе запущено приложение Блокнот.

Nssm7

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

Для удаления службы вводим команду nssm remove notepad и подтверждаем ее удаление. А введя команду

nssm remove notepad confirm

можно обойтись и без подтверждения.

Источник: www.safezone.cc

Как запустить приложение как службу (создать пользовательскую службу).

Если вы хотите запустить приложение как службу в ОС Windows, продолжайте читать это руководство. Как вы знаете, распространенные методы запуска программы при загрузке Windows — это размещение программы при загрузке Windows. папку, либо запускать программу при запуске с помощью реестра Windows, либо запускать приложение с помощью Задачи Планировщик. Хотя эти методы в большинстве случаев эффективны, в некоторых случаях необходимо запускать приложение при запуске как службу Windows, до входа пользователя в систему или взаимодействия с пользователем.

Это руководство содержит пошаговые инструкции о том, как создать службу Windows с помощью любой программы в Windows 10, 8, 7 и серверной ОС.

Как запустить любое приложение как службу Windows.

Способ 1. Как запустить любое приложение как службу Windows с помощью утилиты «Запуск от имени службы».

Первый способ создать определяемую пользователем службу из любой программы — использовать служебную программу «RunAsService».

1.Скачать в RunAsService инструмент на ваш компьютер.


2.Переехать или Копировать загруженный файл RunAsService.exe, в корневую папку диска C: . *

* Примечание (Важно): Вы можете разместить инструмент «RunAsService.exe» в любом месте на диске, но не забудьте оставить инструмент в том же месте, чтобы установленные службы продолжали работать.

Запускать как службу Windows

3. Открытым Командная строка от имени администратора.
4. В командной строке введите: компакт диск

5. Теперь установите приложение, которое вы хотите использовать в качестве службы, с помощью следующей команды: *

  • Установка RunAsService » Наименование услуги » » Показать имя «» PathToExecutable «

Примечания:

1. В приведенной выше команде заменять в ценности в красные буквы следующее:

Имя : Введите имя для службы, которую вы хотите создать. Вы можете использовать наименование услуги для запуска или остановки службы вручную в будущем с помощью команд «net start» или «net stop».

Показать имя : Если хотите, введите другое имя для списка служб Windows. Так название сервиса будет отображаться в списке сервисов. Если «Отображаемое имя» не указано, отображаемое имя будет таким же, как «Имя службы» создаваемой вами службы.

PathToExecutable: Введите полный путь к приложению, которое вы хотите запустить как службу Windows.

Например: Чтобы установить приложение «Notepad.exe» как службу Windows с именем «Блокнот», введите следующую команду:

  • RunAsService устанавливает «Блокнот» «C: Windows System32 notepad.exe»

Служба установки RunAsService

2. Если после выполнения указанной выше команды вы получите сообщение «Приложению для работы требуется функция .Net Framework 2.0», щелкните Загрузите и установите эту функцию, или загрузите .Net Framework 2.0 из Центр загрузок Microsoft .

изображение

6. После выполнения команды в списке служб появится новая служба Windows с именем, указанным в команде «RunAsService». Чтобы запустить вновь созданную службу при запуске:

а. Щелкните правой кнопкой мыши на сервисе и выберите Характеристики.

Список услуг

б. Убедитесь, что Тип запуска установлен на Автоматическая.

изображение

c. Начать сначала свой компьютер, чтобы протестировать службу. *

* Примечания:
1. Вы можете запустить или остановить службу в любое время, выполнив команды «net start» или «net stop» в командной строке (администратор).
2. Если вы хотите удалить установленную службу в будущем:

  • чистая остановка » Наименование услуги «
  • Удаление RunAsService » Наименование услуги «

Служба удаления RunAsService

Способ 2. Как запустить любую программу как службу с помощью NSSM.

Второй способ запустить любое приложение как службу в Windows — использовать Менеджер службы без присасывания инструмент.

1. Скачать НССМ.
2. Распакуйте загруженный ZIP-файл.
3.Переименовать извлеченную папку (например, «nssm-2.24»), чтобы НССМ.
4. Копировать в НССМ папку в корень папка на диске C:
5. Открытым Командная строка от имени администратора и перейдите к НССМ папку, введя следующие команды по порядку (Нажмите Входить после ввода каждой команды):

6. Теперь в соответствии с вашей версией Windows (32- или 64-битной) перейдите к одной из двух вложенных папок, набрав соответствующую команду (и нажмите Входить).

  • Если у вас 64-битная Windows, введите: cd win64
  • Если у вас 32-битная Windows, введите: cd win32

7. Теперь введите следующую команду: *

Установить сервис nssm

8. В открывшемся окне:

изображение

8а. Нажмите кнопку в виде дерева (3) точки рядом к ДОРОЖКА и выберите исполняемый файл приложения, который вы хотите запустить как службу.

Установщик службы NSSM

8b. Когда закончите, введите Имя для новой услуги и нажмите Установить сервис.

Установить службу с NSSM

8c. Нажмите В ПОРЯДКЕ на сообщение «Служба успешно установлена» и все готово! *

* Примечания:
1. После установки службы с помощью установщика службы NSSM новая служба Windows появится в список служб с именем, которое вы указали в имени службы, которым можно управлять, как любой другой Windows услуга.
2. Чтобы удалить службу в будущем:

а. Выполните шаги 5 и 6 выше, а затем введите следующую команду: *

* Примечание: Где Наименование услуги = имя службы, созданной с помощью утилиты NSSM.
например nssm удалить NOTEPAD в этом примере.

служба удаления nssm

б. Наконец нажмите да Убрать сервис.

Как запустить приложение как службу

Вот и все! Сообщите мне, помогло ли вам это руководство, оставив свой комментарий о своем опыте. Пожалуйста, поставьте лайк и поделитесь этим руководством, чтобы помочь другим.

Источник: reviensmedia.com

Как добавить программу в службы windows 7

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

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

NSSM — программа, предназначенная для создания служб из исполняемых файлов Windows, в том числе и из графических утилит, что ставит её на уровень выше средств от Microsoft. С её помощью можно запускать большинство приложений, даже которые рассчитаны на взаимодействие с пользователем. Скачать данную программу можно с её официального сайта — nssm.cc.
На случай проблем с официальным сайтом, можно скачать программу с нашего сайта. В архиве для скачивания можно найти версию для 64-битной версии Windows (папка win64), для 32-битной (папка win32) и исходные коды приложения (папка src). Выбираем нужное приложение под разрядность своей системы, копируем его в удобное для вас место на жестком диске. Никакая установка приложения не требуется.

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

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

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

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

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

Создание службы в Windows

Иногда может потребоваться взять исполняемый файл и зарегистрировать его в качестве службы Windows. Для этого есть несколько способов, я обычно пользуюсь двумя из них.

Sc.exe

Для создания и службы из командной строки можно использовать программу SC (Sc.exe). SC представляет из себя утилиту командной строки, которая реализует вызовы ко всем функциям интерфейса прикладного программирования (API) управления службами Windows. С ее помощью можно производить любые действия со службами — просматривать состояние, управлять (запускать, останавливать и т.п.), изменять параметры, а также создавать новые службы.

При создании службы с помощью SC нет необходимости вручную создавать записи в реестре и затем перезагружать компьютер, чтобы обеспечить обновление базы данных диспетчером служб. Также SC позволяет указать имя удаленного компьютера, что дает возможность управлять службами как на локальном, так и на удаленном компьютере.

Для создания нового сервиса запускаем команду Sc create . Она создает запись службы в реестре и в базе данных диспетчера служб. Sc create имеет следующий синтаксис:

sc create [ServiceName] [binPath= ]

ServiceName — указывает имя, которое будет присвоено разделу службы в реестре. Имейте в виду, что это имя отличается от отображаемого имени службы (имени, которое отображается в оснастке «Services»);
binPath — указывает путь к исполняемому файлу службы.

Для примера создадим службу MyService, укажем отображаемое имя My New Service, зададим тип службы и поставим ее на авто-запуск:

Sc create MyService binPath=C:MyServiceMyService.exe DisplayName=″My New Service″ type=own start=auto

Затем откроем оснастку «Services» и посмотрим результат.

Изменять параметры уже созданной службы можно командой Sc config . Например, мне не понравилось отображаемое имя службы и я хочу его изменить:

Sc config MyService DisplayName=″My Service″

Ну и полностью удалить службу можно вот так:

Sc delete MyService

PowerShell

PowerShell может почти все , в том числе и управлять службами Windows. Создать новую службу можно с помощью командлета New-Service . Создадим такой же сервис, как и в предыдущем примере, только добавим к нему описание (Description):

New-Service -Name MyService -BinaryPathName C:MyServiceMyService.exe`
-DisplayName ″My New Service″ -Description ″Very Important Service . ″

Изменить параметры службы можно командлетом Set-Service :

Set-Service -Name MyService -Description ″Not Very Important Service″ -StartupType Manual

В принципе PowerShell имеет примерно такой же функционал как и Sc.exe, разве что позволяет добавить описание. А вот для удаления служб в PS простого способа нет, придется воспользоваться вот такой конструкцией:

(Get-WmiObject win32_service -Filter ″name=′MyService′″).delete()

Источник: onecomp.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru