Как создать свою службу в Windows 11 и Windows 10


Как создать службу в Windows 10 или 11 средствами системы

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

В статье от 07 декабря 2020 года мы уже рассматривали процедуру создания служб в Windows 10, предлагая использовать для этой цели стороннюю утилиту Non-Sucking Service Manager, укомплектованную простейшим графическим интерфейсом.

Сегодня мы предлагаем познакомиться со способами создания служб исключительно средствами операционной системы. Используйте их, если в качестве службы вам нужно установить процесс исполняемого файла EXE , так как для назначения службами процессов скриптов всё же удобнее использовать Non-Sucking Service Manager.

Командная строка

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

Запустите командную строку от имени администратора и выполните в ней команду следующего вида:

sc create MyService binPath=»C:\service.exe» DisplayName= «ServiceName» type=own start=auto

Как нетрудно догадаться, C:\service.exe – это путь к исполняемому файлу службы, ServiceName – отображаемое имя (псевдоним) , а MyService – фактическое имя службы, к которому нужно будет обращаться в процессе настройки службы. Параметр type задает статус, в параметр start – тип запуска.

Службы

В данном примере служба имеет статус «Отключена», а тип запуска у нее выставлен «Автоматически», в чем можно убедиться, открыв свойства добавленной службы в оснастке управления службами.

Свойства службы

Если служба станет больше не нужна, вы всегда сможете ее удалить командой:

sc delete MyService

PowerShell

Средствами создания и управления службами обладает также и консоль PowerShell .

Запустите ее от имени администратора и выполните следующую команду:

New-Service -Name MyService -BinaryPathName C:\service.exe -DisplayName «ServiceName» -Description » Service Description»

New-Service

Ключевыми параметрами являются -Name и -BinaryPathName: первый принимает произвольное имя устанавливаемой службы, а второй – путь к исполняемому файлу службы.

Моя служба

Параметры -DisplayName и -Description являются дополнительными, они задают отображаемое имя и описание службы.

Свойство моей службы

А вот с удалением службы в PowerShell не всё так однозначно.

Если у вас установлена консоль шестой или более новой версии, службу можно будет удалить командой:

Remove-Service -Name MyService

В противном случае придется использовать вот такую хитрую конструкцию, где MyService – имя службы:

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

Get-WmiObject

Для тех, кто не в курсе: узнать текущую версию PowerShell можно командой host , билд будет указан в строке Version.

Host

И возвращаясь к службам отметим, что между службами, созданными в командной строке и PowerShell, нет никакой разницы, поэтому для их удаления в том и другом случае вы можете использовать команду sc delete MyService.

Как открыть службы Windows 11 и Windows 10

Окно «Службы» в Windows представляет собой оснастку консоли управления (MMC) для просмотра списка и статуса служб, их остановки и запуска, изменения типа запуска службы.

В этой инструкции для начинающих способы открыть службы в Windows 11 и Windows 10 (почти все методы подойдут и для предыдущих версий системы).

Способы открыть «Службы»

Окно служб в Windows 11 и Windows 10

Прежде всего, если вы не знаете, как запустить какой-либо системный элемент в Windows 11 или Windows 10, попробуйте использовать поиск в панели задач, с большой вероятностью он поможет. Во всяком случае, открыть службы через него получится:

Открыть службы через поиск Windows

Если этот метод по какой-то причине вам не подходит, можно использовать следующие варианты:

  1. Нажмите клавиши Win+R на клавиатуре (или нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить»), введите services.msc в окно «Выполнить» и нажмите Ok или Enter. Запустить службы через диалоговое окно Выполнить
  2. В Windows 11 вы можете открыть список «Все приложения» в меню Пуск, выбрать пункт «Инструменты Windows» (его также можно найти в панели управления) и запустить службы оттуда. Службы в инструментах Windows 11
  3. Есть возможность зайти в папку C:\Windows\System32\ и запустить файл services.msc оттуда — это также откроет службы. Запуск служб в проводнике
  4. Если открыть консоль «Управление компьютером» (через поиск или Win+Rcompmgmt.msc), в разделе «Службы и приложения» — «Службы» вы также получите доступ к оснастке управления службами. Службы в управлении компьютером

Кроме этого вы можете найти упрощенный вариант интерфейса для отключения некоторых служб в окне «Конфигурация системы» на вкладке «Службы», как на изображении ниже.

Вкладка службы в окне Конфигурация системы

Для открытия окна «Конфигурация системы», нажмите клавиши Win+R на клавиатуре, введите msconfig и нажмите Enter.

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

А вдруг и это будет интересно:

  • Лучшие бесплатные программы для Windows
  • Syncthing — синхронизация файлов Windows, Linux, MacOS и Android
  • Память встроенной видеокарты Intel HD или Iris Xe, AMD Radeon — как посмотреть, увеличить или уменьшить
  • Файл открыт в System при удалении файла — как исправить?
  • Как открыть порты в Windows и посмотреть список открытых портов
  • Как добавить путь в переменную среды PATH в Windows
  • Windows 11
  • Windows 10
  • Android
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Установка с флешки
  • Настройка роутера
  • Всё про Windows
  • В контакте
  • Одноклассники

    Axel 06.02.2022 в 13:56

  • Живые обои на рабочий стол Windows 11 и Windows 10
  • Лучшие бесплатные программы на каждый день
  • Как скачать Windows 10 64-бит и 32-бит оригинальный ISO
  • Как смотреть ТВ онлайн бесплатно
  • Бесплатные программы для восстановления данных
  • Лучшие бесплатные антивирусы
  • Средства удаления вредоносных программ (которых не видит ваш антивирус)
  • Встроенные системные утилиты Windows 10, 8 и 7, о которых многие не знают
  • Бесплатные программы удаленного управления компьютером
  • Запуск Windows 10 с флешки без установки
  • Лучший антивирус для Windows 10
  • Бесплатные программы для ремонта флешек
  • Что делать, если сильно греется и выключается ноутбук
  • Программы для очистки компьютера от ненужных файлов
  • Лучший браузер для Windows
  • Бесплатный офис для Windows
  • Запуск Android игр и программ в Windows (Эмуляторы Android)
  • Что делать, если компьютер не видит флешку
  • Управление Android с компьютера
  • Syncthing — синхронизация файлов Windows, Linux, MacOS и Android
  • Память встроенной видеокарты Intel HD или Iris Xe, AMD Radeon — как посмотреть, увеличить или уменьшить
  • Файл открыт в System при удалении файла — как исправить?
  • Как открыть порты в Windows и посмотреть список открытых портов
  • Как добавить путь в переменную среды PATH в Windows
  • Как создать свою службу в Windows 11 и Windows 10
  • Как изменить тип сети Windows 11 — общественная или частная
  • WSCC — все системные утилиты Windows в одном интерфейсе
  • Как отключить обновления Windows 11
  • Как открыть Центр управления сетями и общим доступом в Windows 11
  • Как установить программу без прав Администратора в Windows
  • Shell Infrastructure Host — что это за процесс и почему он грузит процессор?
  • Telegram для Windows не показывает видео и фото — как исправить?
  • Ошибка DirectX function GetDeviceRemovedReason failed — как исправить
  • Как изменить пароль или ПИН-код Windows 11
  • Windows
  • Android
  • iPhone, iPad и Mac
  • Программы
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Ноутбуки
  • Wi-Fi и настройка роутера
  • Интернет и браузеры
  • Для начинающих
  • Безопасность
  • Ремонт компьютеров
  • Windows
  • Android
  • iPhone, iPad и Mac
  • Программы
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Ноутбуки
  • Wi-Fi и настройка роутера
  • Интернет и браузеры
  • Для начинающих
  • Безопасность
  • Ремонт компьютеров

Как создать свою службу в Windows 11 и Windows 10

Службы в Windows — особые процессы, выполняемые в фоновом режиме, в том числе от учетной записи «СИСТЕМА», которые могут быть запущены в том числе до входа в систему. При желании вы можете создать свою собственную службу, которая будет работать таким же образом.

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

Создание службы в командной строке

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

sc create Имя_службы binPath="C:\service-file.exe" DisplayName= "Описание_службы" type=own start=auto

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

    • binPath — путь к исполняемому файлу службы.
    • DisplayName — отображаемое в списке служб имя службы.
    • start — тип запуска, возможные значения: boot, auto, demand (значение по умолчанию), disabled, delayed-auto
    • type — тип службы, по умолчанию own, возможны другие значения: share (делит исполняемый файл с другими службами), kernel (драйвер), filesys (драйвер файловой системы), interact (интерактивная служба с возможность взаимодействия с пользователем, поддержка этого типа служб прекращается).

    После создания службы вы сможете увидеть её в списке служб (Win+Rservices.msc), а автоматический запуск произойдет при следующей перезагрузке системы.

    Созданная служба в списке служб Windows

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

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

    New-Service -Name "Имя_Службы" -BinaryPathName '"C:\путь_к_файлу параметры_запуска"'

    Расширенный вариант с указанием описания и типа запуска:

    New-Service -Name MyService -BinaryPathName '"C:\путь_к_файлу параметры_запуска"' -DisplayName "Имя_службы" -Description "Описание службы" -StarupType "Automatic"

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

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

    -BinaryPathName C:\remontka.exe

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

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

    sc delete Имя_службы

    Удаление службы в командной строке

    Или в Windows PowerShell:

    Remove-Service -Name MyService

    После выполнения указанных команд созданная вами служба будет удалена из Windows.

    Созданная служба не работает, варианты решения

    Причина в том, что исполняемые файлы служб — не совсем обычные программы, они, помимо прочего, обмениваются данными с системой. Если ваш EXE не отвечает на соответствующие запросы системы, Windows «делает вывод» о том, что со службой что-то не так.

    Как быть, если вы всё-таки настойчиво хотите использовать свой прикладной исполняемый файл в качестве службы?

    Утилита RunAsSvc

    • Использовать планировщик заданий и запуск от соответствующего пользователя — это не будет в полной мере службой, но почти то, что нужно.
    • Ранее существовала программа RunAsSvc, позволяющая запускать любые процессы в качестве службы, но для современных ОC он не применима, а разработка была прекращена.
    • Использовать инструменты INSTSRV.EXE и SRVANY.EXE из Windows Server 2003 Resource Kit Tools при создании службы Windows.

    Создание пользовательской службы с помощью INSTSRV.EXE и SRVANY.EXE

    Последний вариант из приведённого выше списка рассмотрим подробнее. Шаги будут следующими:

    1. Загрузите (вероятнее всего, придется найти в Интернете на сторонних сайтах) Windows Server 2003 Resource Kit полностью или только файлы INSTSRV.EXE и SRVANY.EXE, располагаем их у себя на диске, в моем примере путь — C:\Windows
    2. В командной строке от имени администратора используйте команду (пути меняем на свои):

    C:\Windows\instsrv.exe Имя_службы C:\Windows\srvany.exe

    Создание службы с помощью instsrv и srvany

  • Если вы получили сообщение о том, что The service was successfully added, всё прошло успешно. Теперь требуется запустить редактор реестра (Win+Rregedit).
  • В редакторе реестра перейдите по пути

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

    Путь к исполняемому файлу службы в реестре

    и найдите раздел с вашим именем службы. Нажимаем по нему правой кнопкой мыши и выбираем пункт «Создать» — «Раздел», задаем имя «Parameters» для раздела.

  • Выберите созданный раздел, нажмите правой кнопкой мыши в правой панели редактора реестра и создайте новый строковый параметр с именем Application
  • Дважды нажмите по параметру и в поле «Значение» укажите путь к вашему файлу exe для запуска службы.
  • Закройте редактор реестра — служба создана, её можно запустить из services.msc или она будет автоматически запущена после перезагрузки компьютера.

    Учитывайте, что во всех приведенных примерах служба по умолчанию запускается с учетной записью «СИСТЕМА». В некоторых случаях это может приводить к неправильной работе. В этом случае может иметь смысл зайти в свойства службы в services.msc и изменить параметры на вкладке «Вход в систему».

    А вдруг и это будет интересно:

    • Лучшие бесплатные программы для Windows
    • Syncthing — синхронизация файлов Windows, Linux, MacOS и Android
    • Память встроенной видеокарты Intel HD или Iris Xe, AMD Radeon — как посмотреть, увеличить или уменьшить
    • Файл открыт в System при удалении файла — как исправить?
    • Как открыть порты в Windows и посмотреть список открытых портов
    • Как добавить путь в переменную среды PATH в Windows
    • Windows 11
    • Windows 10
    • Android
    • Загрузочная флешка
    • Лечение вирусов
    • Восстановление данных
    • Установка с флешки
    • Настройка роутера
    • Всё про Windows
    • В контакте
    • Одноклассники

      Юрий 06.02.2023 в 23:10


    Оставьте комментарий