Программный запуск windows service

Как управлять службами в Windows

Что такое службы

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

Службы могут как относиться к операционной системе Windows, так и быть сторонними приложениями. Примеры служб, которые может установить сам пользователь: веб-сервер, удалённый рабочий стол VNC, SSH служба, служба СУБД MySQL.

Управлять службами можно:

  • в графическом интерфейсе
  • командной строке
  • в PowerShell

Настройка служб в графическом интерфейсе

Чтобы открыть менеджер служб, введите в поиск «Службы» и нажмите Enter:

Ещё один способ открыть это окно, нажать Win+r и ввести:

Здесь, в столбце «Имя», вы увидите список служб, работающих в вашей системе, вместе с их Описанием. Вы также сможете увидеть их Статус — независимо от того, запущены они или остановлены, а также Типы запуска и Вход от имени.

Типы запуска служб Windows

Windows 10 предлагает четыре типа запуска:

  • Автоматически
  • Автоматически (отложенный запуск)
  • Вручную
  • Отключена

Запуск, остановка, отключение служб Windows

Чтобы запустить, остановить, приостановить, возобновить или перезапустить любую службу Windows, выберите службу и щёлкните её правой кнопкой мыши. Вам будут предложены эти варианты.

Если вы хотите управлять дополнительными опциями, дважды щёлкните Сервис, чтобы открыть окно его свойств.

Здесь, в раскрывающемся меню Тип запуска, вы сможете выбрать тип запуска для Сервиса.

В разделе «Состояние службы» вы увидите кнопки «Запустить», «Остановить», «Приостановить», «Продолжить».

В окне «Свойства» вы также увидите другие вкладки, такие как «Вход в систему», «Восстановление» и «Зависимости», которые предлагают дополнительные параметры и информацию.

После внесения изменений вам нужно будет нажать «Применить».

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

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

Чтобы запустить службу:

Например, для запуска службы mysql:

Чтобы остановить службу:

Например, для остановки службы mysql:

Чтобы приостановить службу (не все службы возможно поставить на паузу!):

Чтобы возобновить службу:

Для отключения автозапуска службы:

Например, для отключения последующих запусков службы mysql:

Для включения автозапуска службы:

Например, для включения автозапуска службы mysql:

Перечисление состояний активных служб и драйверов

Перечисление только служб Win32

Для просмотра состояния определённой службы:

Например, чтобы увидеть состояние службы Apache2.4:

Управление службами Windows с помощью PowerShell

PowerShell — это среда автоматизации задач и управления конфигурацией от Microsoft. В этом разделе мы познакомим вас с тем, как управлять службами Windows через PowerShell, поскольку это намного быстрее и эффективнее, чем другие методы.

Читайте также:  Для внутренней базы данных windows

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

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

Запустите терминал PowerShell с правами администратора. Для этого нажмите Win+x и выберите Windows PowerShell (администратор):

Сначала вы должны получить список доступных служб, используя следующую команду:

Это образец вывода, который вы получите.

В выводе по умолчанию вы увидите 3 основных раздела: Status (Статус), Name (Имя) и DisplayName (Отображаемое имя). Теперь, если вы хотите найти и перечислить конкретный сервис, вы можете отфильтровать любой из параметров.

Показать все службы, названия которых начинаются с wi:

Показать все службы, отображаемые имена которых начинаются с win:

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

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

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

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

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

Для остановки службы с помощью PowerShell вы можете использовать следующую команду:

Последующие примеры будут показываться на службе Apache2.4. То есть в следующих командах замените «Apache2.4» на имя интересующей вас службы.

Для запуска службы в PowerShell вы можете использовать эту команду:

Одной из наиболее часто используемых команд для работы со службами является команда перезапуска службы. Структура команды перезапуска службы такова:

И наконец, следующая команда используется для временного приостановления службы.

Для изменения режима запуска службы используйте команду вида:

В качестве ТИП_ЗАПУСКА могут быть:

  • Automatic — служба будет запущена или была запущена операционной системой при запуске системы. Если автоматически запускаемая служба зависит от запускаемой вручную службы, запускаемая вручную служба также запускается автоматически при запуске системы.
  • AutomaticDelayedStart — запускается вскоре после загрузки системы.
  • Disabled — служба отключена и не может быть запущена пользователем или приложением.
  • InvalidValue — не имеет никакого эффекта. Командлет не возвращает ошибку, но StartupType службы не изменяется.
  • Manual — служба запускается только вручную, пользователем, с помощью диспетчера управления службами или приложением.

Это наиболее часто используемые команды для управления службами в PowerShell. Для получения дополнительной информации о командах PowerShell и о том, как они работают, используйте команду Get-Help.

Практическое руководство. Установка и удаление служб Windows How to: Install and uninstall Windows services

Если вы разрабатываете службу Windows с помощью .NET Framework, вы можете быстро установить приложение службы с помощью служебной программы командной строки InstallUtil.exe или PowerShell. If you’re developing a Windows service with the .NET Framework, you can quickly install your service app by using the InstallUtil.exe command-line utility or PowerShell. Если вы являетесь разработчиком и хотите создать службу Windows, которую пользователи могут устанавливать и удалять, можно использовать набор инструментов WiX или коммерческие средства, такие как Advanced Installer, InstallShield или другие. Developers who want to release a Windows service that users can install and uninstall can use the free WiX Toolset or commercial tools like Advanced Installer, InstallShield, or others. См. сведения о создании пакета установщика (классическое приложение Windows). For more information, see Create an installer package (Windows desktop).

Читайте также:  Как сбросить htc windows phone

Если вы хотите удалить службу на своем компьютере, не выполняйте процедуру, описанную в этой статье. If you want to uninstall a service from your computer, don’t follow the steps in this article. Вместо этого определите, какая программа (или программный пакет) установила эту службу, а затем выберите Приложения в параметрах, чтобы удалить эту программу. Instead, find out which program or software package installed the service, and then choose Apps in Settings to uninstall that program. Следует отметить, что многие службы являются составной частью ОС Windows. Если их удалить, это может привести к нестабильной работе системы. Note that many services are integral parts of Windows; if you remove them, you might cause system instability.

Чтобы использовать процедуру, описанную в этой статье, сначала необходимо добавить установщик службы в свою службу Windows. To use the steps in this article, you first need to add a service installer to your Windows service. Дополнительные сведения см. в разделе Пошаговое руководство: создание диспетчера служб Windows. For more information, see Walkthrough: Creating a Windows service app.

Проекты служб Windows нельзя запускать непосредственно из среды разработки Visual Studio путем нажатия клавиши F5. You can’t run Windows service projects directly from the Visual Studio development environment by pressing F5. Перед запуском проекта необходимо установить службу в проекте. Before you can run the project, you must install the service in the project.

Запустите обозреватель сервера и убедитесь, что служба установлена или удалена. You can use Server Explorer to verify that you’ve installed or uninstalled your service.

Установка с помощью программы InstallUtil.exe Install using InstallUtil.exe utility

В меню Пуск выберите каталог Visual Studio и затем Командная строка разработчика для VS . From the Start menu, select the Visual Studio directory, then select Developer Command Prompt for VS .

Появится командная строка разработчика для Visual Studio. The Developer Command Prompt for Visual Studio appears.

Откройте каталог, где находится скомпилированный исполняемый файл вашего проекта. Access the directory where your project’s compiled executable file is located.

Запустите InstallUtil.exe из командной строки, указав исполняемый файл проекта в качестве параметра: Run InstallUtil.exe from the command prompt with your project’s executable as a parameter:

Если вы используете командную строку разработчика для Visual Studio, системный путь должен указывать на файл InstallUtil.exe. If you’re using the Developer Command Prompt for Visual Studio, InstallUtil.exe should be on the system path. Если это не так, можно добавить его в путь или использовать полный путь для его вызова. Otherwise, you can add it to the path, or use the fully qualified path to invoke it. Этот инструмент устанавливается вместе с платформой .NET Framework в папку %WINDIR%\Microsoft.NET\Framework[64]\ . This tool is installed with the .NET Framework in %WINDIR%\Microsoft.NET\Framework[64]\ .

Пример: For example:

  • Для 32-разрядной версии .NET Framework 4 или 4.5 и более поздних версий: если каталог установки Windows — C:\Windows, по умолчанию используется путь C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe. For the 32-bit version of the .NET Framework 4 or 4.5 and later, if your Windows installation directory is C:\Windows, the default path is C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe.
  • Для 64-разрядной версии .NET Framework 4 или 4.5 и более поздних версий: по умолчанию используется путь C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe. For the 64-bit version of the .NET Framework 4 or 4.5 and later, the default path is C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe.
Читайте также:  Winrar для линукс минт

Удаление с помощью служебной программы InstallUtil.exe Uninstall using InstallUtil.exe utility

В меню Пуск выберите каталог Visual Studio и затем Командная строка разработчика для VS . From the Start menu, select the Visual Studio directory, then select Developer Command Prompt for VS .

Появится командная строка разработчика для Visual Studio. The Developer Command Prompt for Visual Studio appears.

Запустите InstallUtil.exe из командной строки, указав выходные данные проекта в качестве параметра: Run InstallUtil.exe from the command prompt with your project’s output as a parameter:

После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре. After the executable for a service is deleted, the service might still be present in the registry. В этом случае удалить запись службы из реестра можно с помощью команды sc delete. If that’s the case, use the command sc delete to remove the entry for the service from the registry.

Установка с помощью PowerShell Install using PowerShell

В меню Пуск выберите Каталог Windows PowerShell и Windows PowerShell. From the Start menu, select the Windows PowerShell directory, then select Windows PowerShell.

Откройте каталог, где находится скомпилированный исполняемый файл вашего проекта. Access the directory where your project’s compiled executable file is located.

Выполните командлет New-Service, указав в качестве параметров выходные данные проекта и имя службы. Run the New-Service cmdlet with the with your project’s output and a service name as parameters:

Удаление с помощью PowerShell Uninstall using PowerShell

В меню Пуск выберите Каталог Windows PowerShell и Windows PowerShell. From the Start menu, select the Windows PowerShell directory, then select Windows PowerShell.

Выполните командлет Remove-Service, указав в качестве параметра имя службы. Run the Remove-Service cmdlet with the name of your service as parameter:

После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре. After the executable for a service is deleted, the service might still be present in the registry. В этом случае удалить запись службы из реестра можно с помощью команды sc delete. If that’s the case, use the command sc delete to remove the entry for the service from the registry.

Оцените статью