Практическое руководство. Установка и удаление служб Windows
Предупреждение
Эта документация не относится к последней версии службы Windows. Последние сведения об использовании BackgroundService служб Windows и шаблоне рабочей службы см. в следующих статье:
Если вы разрабатываете службу Windows, используя .NET Framework, можно быстро установить приложение службы с помощью служебной программы командной строки InstallUtil.exe или PowerShell. Если вы являетесь разработчиком и хотите создать службу Windows, которую пользователи могут устанавливать и удалять, можно использовать бесплатный набор инструментов WiX Toolset или коммерческие средства, такие как Advanced Installer, InstallShield и другие. См. сведения о создании пакета установщика (классическое приложение Windows).
Предупреждение
Если вы хотите удалить службу на своем компьютере, не выполняйте процедуру, описанную в этой статье. Вместо этого определите, какая программа (или программный пакет) установила эту службу, а затем выберите Приложения в параметрах, чтобы удалить эту программу. Многие службы являются составной частью ОС Windows. Если их удалить, это может привести к нестабильной работе системы.
Чтобы использовать процедуру, описанную в этой статье, сначала необходимо добавить установщик службы в свою службу Windows. Дополнительные сведения см. в пошаговом руководстве. Создание приложения службы Windows.
Проекты служб Windows нельзя запускать напрямую из среды разработки Visual Studio путем нажатия клавиши F5. Перед запуском проекта необходимо установить службу в проекте.
Совет
Запустите обозреватель сервера и убедитесь, что служба установлена или удалена.
Установка с помощью программы InstallUtil.exe
В меню Пуск выберите каталог Visual Studio <версия>, а затем выберите Командная строка разработчика для VS <версия>.
Появится командная строка разработчика для Visual Studio.
Откройте каталог, где находится скомпилированный исполняемый файл вашего проекта.
Запустите InstallUtil.exe из командной строки, указав исполняемый файл проекта в качестве параметра:
installutil <yourproject>.exe
Если вы используете Командную строку разработчика в Visual Studio, системный путь должен уже указывать на файл InstallUtil.exe. Если это не так, можно добавить его в путь или использовать полный путь для его вызова. Это средство устанавливается с платформа .NET Framework в %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>.
Например:
- Для 32-разрядной версии .NET Framework 4 или 4.5 и более поздних версий: если каталог установки Windows — C:\Windows, по умолчанию используется путь 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.
Удаление с помощью служебной программы InstallUtil.exe
В меню Пуск выберите каталог Visual Studio <версия>, а затем выберите Командная строка разработчика для VS <версия>.
Появится командная строка разработчика для Visual Studio.
Запустите InstallUtil.exe из командной строки, указав выходные данные проекта в качестве параметра:
installutil /u <yourproject>.exe
После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре. В этом случае удалить запись службы из реестра можно с помощью команды sc delete.
Установка с помощью PowerShell
В меню Пуск выберите Каталог Windows PowerShell и Windows PowerShell.
Откройте каталог, где находится скомпилированный исполняемый файл вашего проекта.
Запустите командлет New-Service, используя имя службы и выходные данные проекта в качестве аргументов.
New-Service -Name "YourServiceName" -BinaryPathName <yourproject>.exe
Удаление с помощью PowerShell
В меню Пуск выберите Каталог Windows PowerShell и Windows PowerShell.
Выполните командлет Remove-Service, указав в качестве аргумента имя службы.
Remove-Service -Name "YourServiceName"
Примечание.
Чтобы использовать этот командлет, требуется PowerShell 6 или более поздней версии. Дополнительные сведения см. в статье Установка PowerShell в Windows.
После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре. В этом случае удалить запись службы из реестра можно с помощью команды sc delete.
sc.exe delete "YourServiceName"
См. также
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по