Практическое руководство. Установка и удаление служб Windows
Примечание.
Эта статья не относится к размещенным службам в .NET. Последние сведения об использовании Microsoft.Extensions.Hosting.BackgroundService служб Windows и шаблоне рабочей службы см. в следующих статье:
Если вы разрабатываете службу Windows, используя .NET Framework, можно быстро установить приложение службы с помощью служебной программы командной строки InstallUtil.exe или PowerShell. Если вы хотите освободить службу Windows, которую пользователи могут установить и удалить, используйте бесплатный набор инструментов WiX или коммерческие средства, такие как Advanced Installer и InstallShield. См. сведения о создании пакета установщика (классическое приложение Windows).
Предупреждение
Если вы хотите удалить службу , которую вы не разработали на компьютере, не выполните действия, описанные в этой статье. Вместо этого определите, какая программа (или программный пакет) установила эту службу, а затем выберите Приложения в параметрах, чтобы удалить эту программу. Многие службы являются составной частью ОС Windows. Если их удалить, это может привести к нестабильной работе системы.
Чтобы использовать процедуру, описанную в этой статье, сначала необходимо добавить установщик службы в свою службу Windows. Дополнительные сведения см. в пошаговом руководстве. Создание приложения службы Windows.
Проекты служб Windows нельзя запускать напрямую из среды разработки Visual Studio путем нажатия клавиши F5. Перед запуском проекта необходимо установить службу в проекте.
Совет
Запустите обозреватель сервера и убедитесь, что служба установлена или удалена.
Установка с помощью программы InstallUtil.exe
Откройте командную строку разработчика для VS.
В меню "Пуск" выберите "Все приложения", разверните версию Visual Studio< и выберите командную строку разработчика для версии>> VS.<
Перейдите в каталог, в котором находится скомпилированный исполняемый файл проекта.
Запустите InstallUtil.exe из командной строки с исполняемым файлом проекта в качестве аргумента:
installutil <yourproject>.exe
Если вы используете Командную строку разработчика в Visual Studio, системный путь должен уже указывать на файл InstallUtil.exe. Если это не так, можно добавить его в путь или использовать полный путь для его вызова. Это средство устанавливается с платформа .NET Framework в %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>.
Удаление с помощью служебной программы InstallUtil.exe
Откройте командную строку разработчика для VS.
В меню "Пуск" выберите "Все приложения", разверните версию Visual Studio< и выберите командную строку разработчика для версии>> VS.<
Запустите InstallUtil.exe из командной строки с параметром
/uninstall
и исполняемым файлом проекта:installutil /uninstall <yourproject>.exe
После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре. В этом случае удалить запись службы из реестра можно с помощью команды sc delete.
Установка с помощью PowerShell
В меню "Пуск" найдите Windows PowerShell и выберите его.
Перейдите в каталог, в котором находится скомпилированный исполняемый файл проекта.
Выполните командлет New-Service с именем службы и исполняемым файлом проекта в качестве аргументов:
New-Service -Name "YourServiceName" -BinaryPathName <yourproject>.exe
Удаление с помощью PowerShell
В меню "Пуск" найдите Windows PowerShell и выберите его.
Выполните командлет Remove-Service, указав в качестве аргумента имя службы.
Remove-Service -Name "YourServiceName"
Примечание.
Чтобы использовать этот командлет, требуется PowerShell 6 или более поздней версии. Дополнительные сведения см. в статье Установка PowerShell в Windows.
После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре. В этом случае удалить запись службы из реестра можно с помощью команды sc delete.
sc.exe delete "YourServiceName"