Создание службы Windows с помощью NSSM
В этом примере мы создадим службу из сценария PowerShell для регистрации среднего процента загрузки ЦП.
Скопируйте и сохраните этот сценарий как log-CPULoadPercentage.ps1 в месте, которое вряд ли будет доступно для кого-либо еще. Попробуйте создать каталог C:/Scripts и сохранить его там. Кроме того, создайте папку в скриптах под названием Logs
Обратите внимание, что путь к сценарию —. Это понадобится вам позже
Примечание. Все строки ниже, за которыми следует символ #, являются комментариями и не влияют на сценарий.
CLS #Необязательно. Мне нравится использовать это для очистки терминала при тестировании. #Убедитесь, что у вас есть папка Logs в том же каталоге, что и этот скрипт #Журнал - это место, где будут храниться записи. Start-Transcript -Path "$PSScriptRootLogslog-CPULoadPercentage-$(get-date -f yyyy-MM-dd).txt" -Append #Пока цикл продолжает работать, пока не будет остановлен вручную While ($True){ #Создает временную метку, чтобы узнать, когда было выполнено измерение $timeStamp = get-date -f yyyy-MM-h:mm:ss #Получает средний процент загрузки в это время, затем ждет 5 секунд, чтобы сделать это снова. $cpuLoadPercent = Get-CimInstance win32_processor | Measure-Object -Property LoadPercentage -Average | Select-Object Average;Start-Sleep -Seconds 5 #Изолирует только среднее значение, чтобы не было странной строки @ {Average = 13} $cpuLoadPercent = $cpuLoadPercent.Average #записывает результаты на экран или, в данном случае, в журнал Write-Host "$timeStamp CPU Load Percentage $cpuLoadPercent" } Stop-Transcript
- Это можно сделать либо в командной строке Windows, либо в PowerShell. Откройте его как администратор.
- Введите команду и запустите ее. Откроется окно установщика службы NSSM.
- Нажмите кнопку с многоточием рядом с полем «Путь:» и перейдите к файлу powershell.exe, который обычно находится в папке . Выберите powershell.exe. Путь: и каталог запуска: поля будут автоматически заполнены.
- Введите следующее в Arguments: поле: , где последняя часть является путь к PowerShell сценария и имени сценария.
- Выберите вкладку Details. Введите то, что вы хотите, чтобы служба отображалась, как в диспетчере служб Windows, в поле Отображаемое имя:. Затем введите, что он делает, в поле Описание:. Тип запуска: может быть установлен как автоматический, автоматический (отложенный запуск), ручной или отключенный. Для этого упражнения подходит автоматический режим.
- Выберите вкладку Вход в систему. Установите переключатель «Эта учетная запись:» и введите учетную запись и пароль, от имени которых будет работать служба. Вам нужно будет выбрать учетную запись, под которой будет работать служба. В идеале у вас должна быть учетная запись Windows, созданная только для запуска этой службы. Разрешения этой учетной записи должны быть ограничены только тем, что нужно делать службе. Вы можете выбрать локальную системную учетную запись , но это не рекомендуется по соображениям безопасности.
Есть несколько других вкладок, которые можно использовать для настройки службы. Для этого упражнения достаточно значений по умолчанию на этих вкладках. Нажмите кнопку Установить службу.
- Когда служба будет установлена, вы увидите, что служба «logCPUAvg» успешно установлена! окно. Выберите ОК, чтобы закрыть его. На этом установка завершена.
- Откройте диспетчер служб Windows и убедитесь, что служба существует.
- Запустите службу, чтобы убедиться, что она будет работать.
- Чтобы убедиться, что эта служба запущена, с помощью проводника перейдите туда, где предполагается сохранить журнал, и проверьте, существует ли он.
Как открыть службы Windows 11 и Windows 10
Окно «Службы» в Windows представляет собой оснастку консоли управления (MMC) для просмотра списка и статуса служб, их остановки и запуска, изменения типа запуска службы.
В этой инструкции для начинающих способы открыть службы в Windows 11 и Windows 10 (почти все методы подойдут и для предыдущих версий системы).
Способы открыть «Службы»
Прежде всего, если вы не знаете, как запустить какой-либо системный элемент в Windows 11 или Windows 10, попробуйте использовать поиск в панели задач, с большой вероятностью он поможет. Во всяком случае, открыть службы через него получится:
Если этот метод по какой-то причине вам не подходит, можно использовать следующие варианты:
- Нажмите клавиши Win+R на клавиатуре (или нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить»), введите services.msc в окно «Выполнить» и нажмите Ok или Enter.
- В Windows 11 вы можете открыть список «Все приложения» в меню Пуск, выбрать пункт «Инструменты Windows» (его также можно найти в панели управления) и запустить службы оттуда.
- Есть возможность зайти в папку C:\Windows\System32\ и запустить файл services.msc оттуда — это также откроет службы.
- Если открыть консоль «Управление компьютером» (через поиск или Win+R — compmgmt.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 и настройка роутера
- Интернет и браузеры
- Для начинающих
- Безопасность
- Ремонт компьютеров
Шаг 6: Удаление службы
Если вам больше не нужна служба, которую вы создали, вы можете ее удалить. Для этого выполните следующие действия:
- Откройте командную строку от имени администратора.
- Введите команду: sc delete servicename, где servicename — это имя службы.
- Нажмите клавишу «Enter».
После выполнения этих действий служба будет удалена из системы. Убедитесь, что вы удалили только те службы, которые больше не нужны, и что удаление служб не повлияет на работу вашей системы.
Обратите внимание, что удаление службы может вызвать ошибки или проблемы в работе других программ, которые зависят от этой службы. Поэтому будьте осторожны при удалении службы
Если вы не уверены, что нужно удалять службу, лучше оставить ее в системе.
Как подключиться к домашней группе
Домашняя группа готова, но пока что в ней имеется только один компьютер. Подключим к ней прочие хосты в локальной сети. Для этого открываем апплет «Домашняя группа» на другом компьютере и, когда по завершении автоматического сканирования в окне оснастки появится сообщение «Пользователь создал домашнюю группу в сети», нажимаем кнопку «Присоединиться».
Затем жмем «Далее», выбираем нужные ресурсы и вводим тот самый пароль, который был выдан системой при создании домашней группы на первом компьютере. Подключение завершено. При желании или необходимости вы можете добавить в список общих ресурсов произвольные каталоги. Есть как минимум два способа это сделать.
Первый способ – это добавить нужную папку в любую из стандартных библиотек Windows, кликнув по ней ПКМ и выбрав в меню соответствующую опцию. Второй способ столь же прост. Кликаем по расшариваемому каталогу ПКМ, выбираем опцию «Предоставить доступ – Домашняя группа (просмотр и изменение)».
После этого папка тут же появится в ресурсах Домашней группы Windows. Кроме того, вы можете изменить пароль доступа к группе (новый пароль нужно передать всем членам группы) и временно отключить доступ к любой из общих библиотек. Все эти действия выполняются непосредственно из окна оснастки Домашней группы.
Основные понятия
Домашняя локальная сеть — это несколько компьютеров, объединенных одним сетевым кабелем для обмена данными. Сегодня в большинстве квартир имеются роутеры, раздающие Wi-Fi. Благодаря им, настройка “локалки” превратилась в простую задачу.
Примерная схема домашней локальной сети с Windows 10 может выглядеть так:
Как видите на приведенном рисунке интернет через Eternet-провод подается в роутер, к которому по пачкорду (такому же проводу с двусторонними разъемами) подключен ПК. Ноутбуки и смартфон подключены к маршрутизатору по Wi-Fi. Разумеется, такое подключение не создает локальную сеть по-умолчанию. Нужна конкретная настройка на каждом из устройств. В приведенном примере различные машины и гаджеты, если они не настроены надлежащим образом, не смогут “видеть” друг друга.
Наиважнейшим термином во всем этом процессе являются так называемые группы. Рабочая группа Windows 10 способна включать максимум 20 машин, которые являются узлами одного уровня, то есть не могут контролировать друг друга. Другими словами в такой сети все компьютеры равны — нет главного сервера.
Посмотрите ещё: Оценка производительности в Windows 10 своими силами
Кроме того существует понятие домашней группы, которая может формироваться, если компьютеры уже принадлежат рабочей группе. В домашней группе легко предоставлять доступ к фото, музыке, фильмам и документам с других устройств. Такая группа в отличие от рабочей имеет пароль, но вводить его нужно только раз, чтобы добавить новое устройство.
Домашняя группа стала недоступна после обновления Windows 10
В Windows 10 1803 компания Microsoft решила отказаться от Домашней группы в пользу обмена файлами через облако OneDrive и встроенной функции «Поделиться». Если вы обновитесь до этой версии, то увидите, что в Windows 10 пропала Домашняя группа не только из приложения Параметры, но также из Панели управления и панели переходов Проводника. Возможность обмена файлами по локальной сети, однако, никуда не делась, вы можете подключить другой компьютер по IP, используя формат 192.168.1.1, но чтобы устройство отображалось в Проводнике, нужно изменить настройки запуска службы «Публикация ресурсов обнаружения функции».
Открыв командой services.msc оснастку управления службами, найдите в списке указанную службу, двойным кликом откройте ее свойства, тип запуска установите «Автоматически», сохраните настройки и перезагрузите компьютер. В следующих версиях Microsoft, наверняка, упростит задачу, а пока что подключаемся так.
Добавление ролей и компонентов на сервер
В Windows Server 2008 R2 можно добавлять роли и компоненты на сервер, используя любую из следующих трех процедур.
Добавление ролей и компонентов с использованием интерфейса Windows |
-
В разделах Сводка по ролям или Сводка компонентов главного окна Диспетчер серверов выберите одну из команд Добавить роли или Добавить компоненты, в зависимости от программного обеспечения, которое нужно установить.
— ИЛИ —
В области Настроить этот сервер окна Задачи начальной настройки щелкните Добавить роли или Добавить компоненты.
Примечания - Если вход в систему выполнен членом группы «Администраторы», то окно Задачи начальной настройки открывается по умолчанию.
- Когда окно Задачи начальной настройки закрывается, открывается Диспетчер серверов. Можно открыть Диспетчер серверов, используя ярлыки в меню Пуск, на панели задач Windows или в компоненте «Администрирование».
Добавление ролей и компонентов с использованием Windows PowerShell |
-
Откройте сеанс Windows PowerShell с повышенными правами пользователя. Для этого нажмите кнопку Пуск, последовательно выберите компоненты Все программы, Стандартные и Windows PowerShell, затем щелкните правой кнопкой мыши ярлык Windows PowerShell и выберите команду Запуск от имени администратора.
-
Прежде чем начать работу с командлетами Диспетчер серверов, загрузите модуль Диспетчер серверов в сеанс Windows PowerShell. Введите приведенную ниже команду и нажмите клавишу ВВОД:
Import-Module Servermanager
Примечание При вводе командлетов Windows PowerShell регистр не учитывается.
-
Если вы не знаете имя команды роль, служба роли или функция, который нужно установить, введите приведенную ниже команду и нажмите клавишу ВВОД, чтобы получить список всех имен команд в столбце Имя. Имя команды потребуется для следующего шага:
Get-WindowsFeature
-
Введите приведенную ниже команду, где name — имя команды роль, служба роли или функция, полученное на предыдущем шаге, а затем нажмите клавишу ВВОД, чтобы установить роль или компонент. Параметр -restart при необходимости автоматически перезагружает компьютер по завершении установки роли или компонента:
Add-WindowsFeature name -restart
Можно установить несколько роли, службы ролей и функции, если разделить имена команд запятыми, как показано в следующем примере:
Add-WindowsFeature Application-Server,Hyper-V,WAS
Примечание | |
Для получения подробных сведений о других параметрах, которые можно использовать вместе с командлетом Add-WindowsFeature, введите команду Get-Help Add-WindowsFeature -full или смотрите раздел Обзор команд диспетчера сервера. |
Добавление ролей и компонентов с использованием командной строки |
-
Откройте окно командной строки с повышенными правами пользователя. Чтобы открыть окно командной строки с более высоким уровнем прав, нажмите кнопку Пуск, выберите Все программы, Стандартные, щелкните правой кнопкой мыши пункт Командная строка, а затем выберите пункт Выполнить от имени администратора.
-
Если вы не знаете имя команды роль, служба роли или функция, который нужно установить, введите следующую команду и нажмите клавишу ВВОД, чтобы получить список всех роли, службы ролей и функции, доступных для установки на компьютере, вместе с их именами команд:
ServerManagerCmd.exe -query
Примечание При вводе команд командной строки Windows регистр не учитывается.
-
Введите приведенную ниже команду, где name — имя команды роль, служба роли или функция, который нужно установить, и нажмите клавишу ВВОД:
ServerManagerCmd.exe -install name -restart
Можно установить несколько роли, службы ролей и функции, если разделить имена команд пробелами, как показано в следующем примере:
ServerManagerCmd.exe -install Application-Server Hyper-V WAS -restart
-
По завершении установки убедитесь, что роли, службы ролей и функции были установлены. Для этого введите указанную ниже команду и нажмите клавишу ВВОД. Установленные роли, службы ролей и функции будут выделены в результатах запроса:
ServerManagerCmd.exe -query
Продлить жизнь Windows 10
Возможность запуска программ на Android в настольной ОС Microsoft хоть и нацелена на очень узкую прослойку пользователей, но все же значительно расширяет возможности использования как самой ОС, так и смартфона, синхронизированного с ней. Microsoft позиционирует WSA как фишку Windows 11 – точно так же, как когда-то она рекламировала WSL как уникальную особенность Windows 10.
Импортозамещение HCM-систем: с чего начать?
Импортонезависимость
Выпустив Windows 11 в октябре 2021 г., софтверная корпорация начала готовить весь мир к отказу от Windows 10. В ее арсенале множество методов, в том числе и возможность бесплатного апдейта до новой ОС. Также все новые ПК и ноутбуки больше не поставляются с Windows 10, плюс в феврале 2023 г. Microsoft прекратила продажу лицензий этой ОС.
Фото: Microsoft
Windows 10 еще рано списывать со счетов
В дополнение к перечисленному Microsoft начала показывать пользователям Windows 10 полноэкранную рекламу Windows 11, закрыть которую совсем не так просто, как может показаться.
Все это дает свои результаты – в январе 2023 г. Windows 11 стояла на 18,13% Windows-компьютеров во всем мире, а Windows 10 – на 68,75% (данные StatCounter). Для сравнения, в июле 2022 г. у Windows 11 было лишь 11,77%, а в январе 2022 г. – 2,6%.
Тем не менее, общемировой отказ от Windows 10 состоится еще очень нескоро. Microsoft будет поддерживать эту ОС вплоть до октября 2025 г. А появление возможности запуска под ней Android-приложений может заставить многих пользователей повременить с переходом на Windows 11.
Как создать службу в 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»
Ключевыми параметрами являются -Name и -BinaryPathName: первый принимает произвольное имя устанавливаемой службы, а второй – путь к исполняемому файлу службы.
Параметры -DisplayName и -Description являются дополнительными, они задают отображаемое имя и описание службы.
А вот с удалением службы в PowerShell не всё так однозначно.
Если у вас установлена консоль шестой или более новой версии, службу можно будет удалить командой:
Remove-Service -Name MyService
В противном случае придется использовать вот такую хитрую конструкцию, где MyService – имя службы:
(Get-WmiObject win32_service -Filter «name=’MyService’»).delete()
Для тех, кто не в курсе: узнать текущую версию PowerShell можно командой host , билд будет указан в строке Version.
И возвращаясь к службам отметим, что между службами, созданными в командной строке и PowerShell, нет никакой разницы, поэтому для их удаления в том и другом случае вы можете использовать команду sc delete MyService.
Включить или отключить службы с помощью PowerShell и командной строки в Windows
ОС Windows, когда она установлена и работает на вашем устройстве, на самом деле отлично справляется с автоматическим управлением службами, но иногда вам может потребоваться вручную включить или отключить службу по требованию. Имейте в виду, что если вы отключите службу, это повлияет на все зависимые службы; и включение службы не приводит к автоматическому перезапуску зависимых от нее служб.
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)
Доступ ко всем службам Windows можно получить через диспетчер служб Windows, и вы можете запускать, останавливать и отключать службы Windows с его помощью.
Но вы также можете использовать PowerShell и командную строку для управления службами.
Вы должны войти в систему как администратор, чтобы включать и отключать службы. Не рекомендуется отключать службы, если вы не знаете, какие функции будут затронуты и как это повлияет на производительность системы в целом. Если вы отключите службу и не сможете получить доступ к своему компьютеру, вы можете загрузиться в безопасном режиме, чтобы включить службу.
Прежде чем вносить изменения в службы, мы рекомендуем вам создать точку восстановления системы в качестве необходимой меры предосторожности на случай, если процедура приведет к сбою системы, вы сможете выполнить восстановление системы, используя точку восстановления, чтобы отменить изменения
Включить или отключить службы с помощью PowerShell
Чтобы включить или отключить Службы с помощью PowerShell в Windows 11/10, выполните следующие действия:
Получить-Сервис | Формат-Таблица-Авто
Чтобы включить службу, введите нужную команду в консоли PowerShell и нажмите Enter:
Примечание. Замените Наименование услуги заполнитель в каждой из команд с фактическим именем службы, которую вы хотите включить или отключить.
(Автоматический (Отложенный старт))
Set-Service -Name «ServiceName» -StartupType AutomaticDelayedStart
ИЛИ
(автоматический)
Set-Service -Name «ServiceName» -StartupType Автоматически
ИЛИ
(Руководство)
Set-Service -Name «ServiceName» -StartupType Manual
Чтобы включить и запустить службу, введите нужную команду в консоли PowerShell и нажмите Enter:
(Автоматический (Отложенный старт))
Set-Service -Name «ServiceName» -StartupType AutomaticDelayedStart -Status Running
ИЛИ
(автоматический)
Set-Service -Name «ServiceName» -StartupType Automatic -Status Running
ИЛИ
(Руководство)
Set-Service -Name «ServiceName» -StartupType Manual -Status Running
Чтобы остановить и отключить службу, введите приведенную ниже команду в консоль PowerShell и нажмите Enter:
Set-Service -Name «ServiceName» -StartupType Disabled -Status Stopped
Выйдите из PowerShell, когда закончите.
Включить или отключить службы с помощью командной строки
Чтобы включить или отключить службы с помощью командной строки в Windows 11/10, выполните следующие действия:
- Нажмите клавишу Windows + X, чтобы открыть меню опытного пользователя.
- Нажмите A на клавиатуре, чтобы открыть Windows Terminal в режиме администратора/с повышенными правами.
- Выберите Командная строка.
- В консоли приглашения CMD введите или скопируйте и вставьте приведенную ниже команду и нажмите Enter, чтобы проверить текущее состояние всех служб:
состояние sc queryex=все типы=служба
Чтобы включить службу, введите команду ниже, которую вы хотите, в консоль командной строки CMD и нажмите Enter:
Примечание. Замените Наименование услуги заполнитель в каждой из команд с фактическим именем службы, которую вы хотите включить или отключить.
(Автоматический (Отложенный старт))
sc config «ServiceName» start=delayed-auto
ИЛИ
(автоматический)
sc config «ServiceName» start=auto
ИЛИ
(Руководство)
sc config «ServiceName» start=требование
Чтобы включить и запустить службу, введите команду ниже, которую вы хотите, в консоль командной строки CMD и нажмите Enter:
(Автоматический (Отложенный старт))
sc config «ServiceName» start=delayed-auto && sc start «ServiceName»
ИЛИ
(автоматический)
sc config «ServiceName» start=auto && sc start «ServiceName»
ИЛИ
(Руководство)
sc config «ServiceName» start=требование && sc start «ServiceName»
Чтобы остановить и отключить службу, введите приведенную ниже команду в консоль приглашения CMD и нажмите Enter:
sc stop «ServiceName» && sc config «ServiceName» start=disabled
Выйдите из командной строки, когда закончите.
Создание службы с помощью программы Sc.exe
Первый способ позволяет создавать службы, используя утилиты, работающие через командную строку. В данном случае, используется инструмент sc.exe. Он позволяет взаимодействовать с функциями API и выполнять операции со службами Windows 10. Несмотря на то, что данная программа даже не обладает графическим интерфейсом, она является мощным инструментом и может контролировать состояние служб, создавать, редактировать и управлять ими. Если создавать службу, с помощью sc.exe, то не возникает необходимости в изменении параметров реестра и списка служб в диспетчере. Кроме того, утилита способна работать со службами на локальном компьютере, и выполнять те же действия на удаленных машинах. Чтобы создать новый сервис, откройте командную строку от имени администратора и запустите команду «Sc create». Она запишет новую службу к базе диспетчера служб. Синтаксис команды представлен следующим образом:
Где:
- ServiceName — данным параметром определяется имя раздела службы в реестре; Данное имя не совпадает с тем именем, которое будет отображаться диспетчере (например, в Services).
- BinPath — в этом параметре записываем путь, где хранится исполняемый файл.
Чтобы было понятнее, в качестве примера, мы создадим службу «MySevice». При этом, отображаемое имя будет «My New Service». Указываем тип службы и включаем автозапуск:
Теперь откройте оснастку «Services» и взгляните на то, что получилось:
Параметры службы, которая уже была создана и запущена, можно изменить при помощи команды Sc config. К примеру, мы заменим имя службы, которое отображается как:
А еще можно избавиться от службы полным ее удалением. Для этого используйте такую команду:
Созданная служба не работает, варианты решения
Из описания можно предположить, что любой файл .exe может быть службой, однако, при попытке добавить свои фоновые утилиты и заставить их работать в виде службы рядовые пользователи обычно сталкиваются с ситуацией, когда процесс запускается, а затем закрывается сам. А при запуске службы вручную через некоторое время сообщает, что служба не ответила на запрос своевременно или о других ошибках.
Причина в том, что исполняемые файлы служб — не совсем обычные программы, они, помимо прочего, обмениваются данными с системой. Если ваш EXE не отвечает на соответствующие запросы системы, Windows «делает вывод» о том, что со службой что-то не так.
Как быть, если вы всё-таки настойчиво хотите использовать свой прикладной исполняемый файл в качестве службы?
- Использовать планировщик заданий и запуск от соответствующего пользователя — это не будет в полной мере службой, но почти то, что нужно.
- Ранее существовала программа RunAsSvc, позволяющая запускать любые процессы в качестве службы, но для современных ОC он не применима, а разработка была прекращена.
- Использовать инструменты INSTSRV.EXE и SRVANY.EXE из Windows Server 2003 Resource Kit Tools при создании службы Windows.
Создание пользовательской службы с помощью INSTSRV.EXE и SRVANY.EXE
Последний вариант из приведённого выше списка рассмотрим подробнее. Шаги будут следующими:
- Загрузите (вероятнее всего, придется найти в Интернете на сторонних сайтах) Windows Server 2003 Resource Kit полностью или только файлы INSTSRV.EXE и SRVANY.EXE, располагаем их у себя на диске, в моем примере путь — C:Windows
- В командной строке от имени администратора используйте команду (пути меняем на свои):
C:Windowsinstsrv.exe Имя_службы C:Windowssrvany.exe
- Если вы получили сообщение о том, что The service was successfully added, всё прошло успешно. Теперь требуется запустить редактор реестра (Win+R — regedit).
- В редакторе реестра перейдите по пути
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices
и найдите раздел с вашим именем службы. Нажимаем по нему правой кнопкой мыши и выбираем пункт «Создать» — «Раздел», задаем имя «Parameters» для раздела.
- Выберите созданный раздел, нажмите правой кнопкой мыши в правой панели редактора реестра и создайте новый строковый параметр с именем Application
- Дважды нажмите по параметру и в поле «Значение» укажите путь к вашему файлу exe для запуска службы.
Закройте редактор реестра — служба создана, её можно запустить из services.msc или она будет автоматически запущена после перезагрузки компьютера.