У меня есть пара старых сервисов, которые я хочу полностью удалить. Как я могу это сделать?
Как я могу удалить службу в Windows?
Ответы (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
sc query state= all
, чтобы получить полный список услуг; basic sc query
не будет возвращать неактивные (также известные как отключенные) службы.
- person tricasse; 03.09.2014
sc
имеет псевдоним set-content
. Таким образом, sc delete service
фактически создаст файл с именем delete
с содержимым service
. Чтобы сделать это в Powershell, используйте вместо этого sc.exe delete service
.
- person KFL; 02.10.2015
sc delete "Amazon Assistant Service"
. Кроме того, точное название службы можно найти в реестре HKLM\SYSTEM\CurrentControlSet\Services\{xxyy}\DisplayName
- person Jan 'splite' K.; 10.05.2017
Щелкните Пуск | Выполнить и введите regedit
в строке Open :. Щелкните ОК.
Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Прокрутите вниз левую панель, найдите имя службы, щелкните его правой кнопкой мыши и выберите Удалить.
Перезагрузите систему.
sc delete
не работает. Спасибо.
- person holtavolt; 08.10.2018
Используйте services.msc или (Пуск> Панель управления> Администрирование> Службы), чтобы найти нужную службу. Дважды щелкните, чтобы увидеть имя службы и путь к исполняемому файлу.
Проверьте информацию о версии exe, чтобы узнать о владельце службы, и используйте «Установка и удаление программ», чтобы выполнить полное удаление, если это возможно.
В противном случае из командной строки:
sc stop servicexyz
sc delete servicexyz
Никакого перезапуска не требуется.
sc delete "Amazon Assistant Service"
- person Jan 'splite' K.; 10.05.2017
SC DELETE "service name"
Запустите команду в cmd от имени администратора, иначе вы получите эту ошибку: -
Ошибка openservice 5 доступ запрещен
Мы можем сделать это двумя разными способами
Удалить службу Windows через реестр
Удалить службу из реестра очень легко, если вы знаете правильный путь. Вот как я это сделал:
Запустите Regedit или Regedt32.
Перейдите в запись реестра HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services
Найдите службу, которую хотите удалить, и удалите ее. Вы можете посмотреть на ключи, чтобы узнать, какие файлы использовала служба, а также удалить их (при необходимости).
Удалить службу Windows через командное окно
Кроме того, вы также можете использовать командную строку и удалить службу с помощью следующей команды:
sc удалить
Вы также можете создать службу, используя следующую команду
sc создать MorganTechService binpath = C: \ Program Files \ MorganTechSPace \ myservice.exe
Примечание. Возможно, вам придется перезагрузить систему, чтобы список обновился в диспетчере служб.
sc delete
также удалил бы ключ reg, как вы это делали вручную. Вам просто нужно перезагрузить компьютер, чтобы удалить его из services.msc. Если он не был удален после перезагрузки, вашим следующим путем будет удаление связанного приложения, которое поместило службу туда в первую очередь. Повторное создание образа машины было очень радикальным, особенно потому, что вы могли просто поискать в реестре имя этой службы и удалить их.
- person vapcguy; 06.07.2016
Если у вас 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 ServiceName
Однако это не сработало, поскольку я выполнял его из PowerShell.
При использовании PowerShell вы должны указать полный путь к sc.exe
, потому что PowerShell имеет псевдоним по умолчанию для sc
, присваивающего его Set-Content
. Поскольку это действительная команда, на самом деле она не отображает сообщения об ошибке.
Чтобы решить эту проблему, я выполнил его следующим образом:
C:\Windows\System32\sc.exe delete ServiceName
Если это службы, созданные .NET, вы можете использовать installutil.exe с переключателем / u в папке .net framework, например C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727
Вот сценарий 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
sc удалить имя
Для меня созданную мной службу пришлось удалить в Панели управления> Программы и компоненты.
Перед удалением службы необходимо просмотреть зависимости.
Вы можете проверить это:
Откройте services.msc
и найдите имя службы, перейдите на вкладку «Зависимости».
Источник: http://www.sysadmit.com/2016/03/windows-eliminar-un-servicio.html
Вы можете использовать мою небольшую утилиту для редактирования списка сервисов Service Manager
Вы можете выбрать любую услугу> Изменить> Удалить. Метод работает сразу, перезагрузка не требуется.
Исполняемый файл: [Загрузить]
Исходный код: [Загрузить]
Сообщение в блоге: [BlogLink]
Класс редактора службы: WinServiceUtils.cs