Как я могу удалить службу в Windows?

У меня есть пара старых сервисов, которые я хочу полностью удалить. Как я могу это сделать?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
440
0
567 948
13
Перейти к ответу Данный вопрос помечен как решенный

Ответы 13

Щелкните Начинать | Пробег и введите regedit в строке Open :. Щелкните ОК.

Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

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

Перезагрузите систему.

Это хороший запасной вариант, когда исполняемый файл, на котором размещена служба, был удален (не удален), а предпочтительный механизм sc delete не работает. Спасибо.

holtavolt 08.10.2018 17:13
Ответ принят как подходящий

Используйте команду SC, как это (вам нужно быть в командной строке, чтобы выполнить команды в этом сообщении):

SC STOP shortservicename
SC DELETE shortservicename

Примечание: Вам необходимо запустить командную строку от имени администратора, а не только с правами администратора, но и с правами администратора. Если вы получили сообщение об отсутствии необходимых прав доступа для остановки и / или удаления службы выше, запустите командную строку от имени администратора. Вы можете сделать это, выполнив поиск командной строки в меню «Пуск», а затем щелкнув правой кнопкой мыши и выбрав «Запуск от имени администратора». Примечание для пользователей PowerShell:sc имеет псевдоним set-content. Таким образом, sc delete service фактически создаст файл с именем delete с содержимым service. Чтобы сделать это в Powershell, используйте sc.exe delete service вместо


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

SC QUERY state= all >"C:\Service List.txt"

Чтобы получить более краткий список, выполните эту команду:

SC QUERY state= all | FIND "_NAME"

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

SERVICE_NAME: MyService
DISPLAY_NAME: My Special Service

И, таким образом, чтобы удалить эту службу:

SC STOP MyService
SC DELETE MyService

Удаление службы обнаружения SSDP? Он используется для обнаружения и настройки устройств UPnP в локальной сети, удалять его не следует. Его просто использовали в качестве примера.

Lasse V. Karlsen 17.09.2008 00:00

Ооо, понятно, да. Я думал, вы имели в виду, что удаление служб не рекомендуется. Спасибо за ответ!

sgwill 17.09.2008 00:07

Интересно, сколько системных администраторов уже случайно удалили свою службу SSDPSRV исключительно из-за этого ответа: p

Vincent Vancalbergh 11.06.2014 12:52

Следует отметить, что вы должны запускать CMD от имени администратора. (Щелкните правой кнопкой мыши CMD и выберите «Запуск от имени администратора»), чтобы выполнить многие из этих команд.

Highway of Life 17.07.2014 23:29

Используйте sc query state= all, чтобы получить полный список услуг; базовый sc query не будет возвращать неактивные (также известные как отключенные) службы.

tricasse 03.09.2014 01:05

@tricasse Спасибо! Я добавил ваше замечание к исходному ответу.

Greg Dubicki 11.03.2015 01:52

Обратите внимание, что если вы используете PowerShell, sc имеет псевдоним set-content. Таким образом, sc delete service фактически создаст файл с именем delete с содержимым service. Чтобы сделать это в Powershell, используйте вместо этого sc.exe delete service.

KFL 02.10.2015 08:14

Если вы используете powershell ... замените sc.exe вместо sc, в противном случае функция вернется без удаления службы.

andrew pate 24.02.2017 17:45

Обратите внимание, что если в названии сервиса есть пробелы, необходимо заключить полное название в кавычки - sc delete "Amazon Assistant Service". Кроме того, точное название службы можно найти в реестре HKLM\SYSTEM\CurrentControlSet\Services\{xxyy}\DisplayName.

Jan 'splite' K. 10.05.2017 12:17

К вашему сведению: для поклонников PS, похоже, это недавно было добавлено в Ядро PowerShell (NB: отличается от стандартного PowerShell). Запрос на включение: github.com/PowerShell/PowerShell/pull/4858 Код: github.com/PowerShell/PowerShell/blob/master/src/…

JohnLBevan 06.04.2018 12:37

SC STOP shortservicename SC DELETE shortservicename

Jayani Sumudini 23.07.2018 06:01

в PowerShell используйте «C: \ Windows \ System32 \ sc.exe» (или «sc.exe») вместо «SC»

MovGP0 24.01.2019 13:24

Спасибо! Эта заметка о PowerShell была эпической, довольно страшно, сколько времени я мог бы потерять без нее.

eglasius 19.02.2019 13:25

@eglasius Спасибо @zelusp за это, так как он редактировал это.

Lasse V. Karlsen 21.02.2019 01:58

sc удалить имя

Используйте services.msc или (Пуск> Панель управления> Администрирование> Службы), чтобы найти нужную службу. Дважды щелкните, чтобы увидеть имя службы и путь к исполняемому файлу.

Проверьте информацию о версии exe, чтобы узнать о владельце службы, и используйте «Установка и удаление программ», чтобы выполнить полное удаление, если это возможно.

В противном случае из командной строки:

sc stop servicexyz
sc delete servicexyz

Никакого перезапуска не требуется.

Обратите внимание, что если в названии службы есть пробелы, вы должны заключить полное имя в кавычки - например, sc delete "Amazon Assistant Service".

Jan 'splite' K. 10.05.2017 12:17

Вот переданный мне сценарий vbs:

Set servicelist = GetObject("winmgmts:").InstancesOf ("Win32_Service")

for each service in servicelist
    sname = lcase(service.name)
    If sname = "NameOfMyService" Then 
        msgbox(sname)
        service.delete ' the internal name of your service
    end if
next

Вероятно, nameofmyservice, а не NameOfMyService, поскольку sname все в нижнем регистре в строке ранее.

Dominik George 23.11.2015 16:05

Если это службы, созданные .NET, вы можете использовать installutil.exe с ключом / u его в папке .net framework, например C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727

Если у вас Windows Vista или выше, запустите это из командной строки как администратор:

sc delete [your service name as shown in service.msc e.g moneytransfer]

Например: sc delete moneytransfer

Удаляем папку C:\Program Files\BBRTL\moneytransfer\

Найдите ключи реестра moneytransfer и удалите их:

 HKEY_CLASSES_ROOT\Installer\Products\
 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\
 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\EventLog\
 HKEY_LOCAL_MACHINE\System\CurrentControlSet002\Services\
 HKEY_LOCAL_MACHINE\System\CurrentControlSet002\Services\EventLog\
 HKEY_LOCAL_MACHINE\Software\Classes\Installer\Assemblies\ [remove .exe references]
 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Folders

Эти шаги были протестированы в Windows XP, Windows 7, Windows Vista, Windows Server 2003 и Windows Server 2008.

SC DELETE "service name"

Запустите команду в cmd от имени администратора, иначе вы получите эту ошибку: -

openservice failed 5 access is denied

Мы можем сделать это двумя разными способами

Удалить службу Windows через реестр

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

  1. Запустите Regedit или Regedt32

  2. Перейдите к записи реестра «HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services»

  3. Найдите службу, которую вы хотите удалить, и удалите ее. Вы можете посмотреть на ключи, чтобы узнать, какие файлы использовала служба, а также удалить их (при необходимости).

Удалить службу Windows через командное окно

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

sc удалить

Вы также можете создать службу, используя следующую команду

sc create "MorganTechService" binpath = "C: \ Program Files \ MorganTechSPace \ myservice.exe"

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

Метод regedit у меня не сработал. Когда я обновил диспетчер служб, он по-прежнему отображал службу, но с ошибкой, указывающей, что он не может отобразить описание.

datguy 12.12.2014 18:51

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

kombsh 13.12.2014 08:04

Возможно, но из-за этого подход regedit уступает команде SC, которая не требует перезагрузки.

datguy 13.12.2014 08:09

Это испортило мои услуги :( пожалуйста, не вводите в заблуждение эту глупую штуку, автоматически показывайте этот ансер на его странице поиска, и я доверял ему и слепо следил за ним, не нажимая ссылку SOF, и мне пришлось повторно создать образ моей машины.

Anand Rockzz 25.01.2015 08:52

спасибо за метод реестра. только так я мог сделать это на ренегатской машине.

frostymarvelous 22.06.2015 16:19

и это действительно работает. иногда с помощью SC Delete вам все равно нужно перезапускать.

frostymarvelous 22.06.2015 16:20

@AnandRockzz sc delete также удалил бы ключ reg, как вы это делали вручную. Вам просто нужно будет перезагрузить компьютер, чтобы удалить его из services.msc. Если он не был удален после перезагрузки, вашим следующим путем будет удаление связанного приложения, которое поместило службу туда в первую очередь. Повторное создание образа машины было очень радикальным, особенно потому, что вы могли просто поискать в реестре имя этой службы и удалить их.

vapcguy 06.07.2016 20:26

@AnandRockzz 1-й: большое спасибо за предупреждение! 2-й: проголосуйте против этого ответа (если вы еще этого не сделали), если он неправильный / вредный. Кроме того, в результате Google, который показывает фрагмент этого ответа, вы можете оставить отзыв и сообщить Google, что это неправильно / вредно. Если это сделает достаточное количество людей, Google может удалить его.

stormdrain 08.11.2017 18:48

Для меня созданную мной службу пришлось удалить в Панели управления> Программы и компоненты.

как вы можете увидеть службы, установленные в программах и функциях

Nisha 05.05.2017 11:05

Если я правильно помню, это было тогда, когда у меня была программа, которая, как мне кажется, была splunk, после установки запускалась как служба, потому что она размещалась локально, вы могли перейти на localhost: 8080 для просмотра локального веб-сайта. Для того, чтобы убрать пришлось всю прогу.

Demodave 05.05.2017 16:35

Спасибо. Я установил службы с помощью командной строки. Я удалил с помощью cmd в cmd pmpt. Еще раз спасибо за ответ.

Nisha 09.05.2017 10:55

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

Вы можете проверить это:

Откройте services.msc и найдите имя службы, перейдите на вкладку «Зависимости».

Источник: http://www.sysadmit.com/2016/03/windows-eliminar-un-servicio.html

Как описано выше, я выполнил:

sc delete ServiceName

Однако это не сработало, поскольку я выполнял его из PowerShell.

При использовании PowerShell вы должны указать полный путь к sc.exe, потому что PowerShell имеет псевдоним по умолчанию для sc, назначающий его Set-Content. Поскольку это действительная команда, на самом деле она не отображает сообщения об ошибке.

Чтобы решить эту проблему, я выполнил его следующим образом:

C:\Windows\System32\sc.exe delete ServiceName

Вы можете использовать мою небольшую утилиту для редактирования списка сервисов Менеджер по обслуживанию

Preview

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

Исполняемый файл: [Скачать]

Исходный код: [Скачать]

Сообщение в блоге: [BlogLink]

Класс редактора сервиса: WinServiceUtils.cs

Другие вопросы по теме