Сталкивались ли вы с ситуацией, когда при удалении программного обеспечения записи о Службах или драйверах остаются в реестр, и Windows пытается загрузить их при каждой загрузке, терпит неудачу и регистрирует ошибку в журнале системных событий при каждой загрузке. запускать?
В этой статье рассказывается, как удалить потерянную службу в Windows 10 (и более ранних версиях) с помощью реестра, командной строки SC.exe, PowerShell или Автозапуск. Прежде чем продолжить, создайте Точка восстановления системы и возьми полная резервная копия реестра.
Если ты найдешь это нет иждивенцев существует для службы, вы можете удалить оставшуюся или ненужную службу в Windows одним из следующих способов.
СОДЕРЖАНИЕ
-
Удалить службу в Windows
- Способ 1: Использование команды SC.EXE
- Метод 2: использование автозапуска
- Метод 3: Использование редактора реестра
- Метод 4: Использование PowerShell
- Метод 5: Использование Process Hacker
- ИНФОРМАЦИЯ: просмотр иждивенцев службы
Как удалить службу в Windows?
Вы можете удалить службу с помощью встроенной командной строки SC.exe, редактора реестра, PowerShell или такой утилиты, как Autoruns. Следуйте одному из следующих методов:
Использование команды SC
В SC.EXE
Инструмент командной строки в Windows можно использовать для создания, редактирования или удаления служб. Чтобы удалить службу в Windows, используйте следующий синтаксис командной строки из Командная строка администратора:
sc удалить имя_службы
Где наименование услуги относится к короткому имени службы, а не к ее отображаемому имени. Чтобы найти короткое имя, откройте Services MMC и дважды щелкните службу.
- Пример 1: Служба обновлений Google (
gupdate
) - отображаемое имя, аgupdate
это короткое имя. - Пример 2: Dell SupportAssist (
SupportAssistAgent
) - отображаемое имя, аSupportAssistAgent
это короткое имя.
Другой способ найти короткое имя службы - использовать эту командную строку:
sc query type = service | более
Приведенная выше команда перечисляет все службы вместе с кратким именем службы и отображаемым именем.
Или, если вы знаете отображаемое имя, вы можете найти имя службы с помощью этой команды:
sc getkeyname "отображаемое имя службы"
который в этом примере:
sc getkeyname "Служба обновлений Google (gupdate)"
Однажды краткое название службы получается любым из вышеперечисленных методов, используйте эту команду для удаления Сервиса:
sc удалить тест
Вы увидите результат: [SC] DeleteService УСПЕХ
При этом с компьютера удаляется указанная служба (в данном примере «тестовая»).
Если служба запущена или другой процесс имеет открытая ручка в сервис, он будет помечен для удаления и удален при следующей перезагрузке.
Не можете удалить службу?
Если при удалении службы вы получаете следующую ошибку, возможно, вы пытаетесь удалить службу из обычной командной строки, а не из Командная строка администратора.
Если такая же ошибка возникает в командной строке администратора, это означает, что текущая учетная запись пользователя не имеет разрешений на полный контроль для этой службы.
[SC] OpenService FAILED 5: Доступ запрещен.
Чтобы устранить эту ошибку при удалении службы, вам необходимо сначала измените разрешения службы. В качестве альтернативы вы можете использовать СИСТЕМА или Доверенный установщик аккаунт для удаления сервиса.
Использование автозапуска из Windows Sysinternals
Автозапускиз Microsoft Windows Sysinternals, это должен иметь инструмент, который помогает вам управлять запуском Windows, службами, драйверами, поставщиками Winsock, надстройками Internet Explorer, расширениями оболочки и т. д.
- Скачайте Autoruns и запустите
- На вкладке Параметры отметьте Скрыть записи Microsoft так что перечислены только сторонние записи.
- Нажмите F5 чтобы обновить объявление.
- Щелкните значок Услуги вкладка, чтобы удалить ненужные или оставшиеся услуги.
- Закройте Autoruns.
Использование редактора реестра
Чтобы вручную удалить службу напрямую через реестр Windows, выполните следующие действия:
- Начинать
Regedit.exe
и перейдите в следующую ветку:HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services
Каждый подраздел в указанном выше разделе реестра представляет драйвер или службу. Имя ключа такое же, как у короткое имя службы. Кроме того, вы сможете легко идентифицировать запись, посмотрев на Показать имя и ImagePath значения на правой панели в редакторе реестра.
- Найдите запись, которую хотите удалить.
- Сделайте резервную копию соответствующего ключа экспортируя это в файл .reg.
- После экспорта щелкните ключ правой кнопкой мыши и выберите «Удалить».
- Закройте редактор реестра.
Использование PowerShell
В окне администратора PowerShell вы можете использовать следующие команды для удаления службы.
$ service = Get-WmiObject -Class Win32_Service -Filter "Name = 'servicename'" $ service.delete ()
ReturnValue из 0
указывает, что операция прошла успешно. Служба удалена и больше не будет отображаться в MMC служб.
Чтобы узнать значение возвращаемого значения, ознакомьтесь со статьей Microsoft Удалить метод класса Win32_Service
sc.exe
) при запуске в PowerShell. Это потому, что команда SC
(без упоминания расширения .EXE
) будет интерпретироваться как Set-Content
который является встроенным командлетом в PowerShell.Это будет еще проще, если у вас установлен PowerShell 6.0. В PowerShell 6 и выше вы можете использовать этот синтаксис для удаления службы:
Remove-Service -Name ServiceName
Запуск Удалить-Сервис
команда в более старых версиях PowerShell (<6.0) показывает ошибку: Термин «Remove-Service» не распознается как имя командлета, функции, файла сценария или работающей программы.
Использование Process Hacker
Process Hacker - хорошая утилита для управления процессами, внешне похожая на Process Explorer от Microsoft. С помощью Process Hacker вы можете легко удалить службу с помощью контекстного меню.
Запустите Process Hacker от имени администратора. Перейдите на вкладку «Службы», щелкните правой кнопкой мыши службу, которую хотите удалить, и нажмите «Удалить».
(В качестве примечания, вы также можете настроить разрешения службы используя Process Hacker.)
Загрузите Process Hacker из https://processhacker.sourceforge.io/
Просмотр иждивенцев службы
Когда вы удаляете службу, другие, зависящие от нее, не запускаются, возвращая ошибку «Произошла системная ошибка 1075. Служба зависимостей не существует или была помечена для удаления ». Когда запись о драйвере или службе осталась в реестре, но соответствующие файлы отсутствуют, в журнале событий будет записана запись с ID: 7000
при каждом запуске.
Имя журнала: Система. Источник: Service Control Manager. Дата: Идентификатор события: 7000. Уровень: Ошибка. Описание: Не удалось запустить службу DgiVecp из-за следующей ошибки:Система не может найти указанный файл.
Итак, желательно сначала проверить, есть ли иждивенцы. Вы можете проверить это в Services MMC, дважды щелкнув элемент, который вы собираетесь удалить, и щелкнув вкладку Dependencies. Список компонентов, зависящих от этой службы, показан ниже. Вот пример, в котором «Факс» зависит от запуска «Диспетчера очереди печати».
Хотя у большинства сторонних сервисов нет иждивенцев, у некоторых есть. Всегда желательно взглянуть на эту вкладку, прежде чем удалять элемент.
Другой способ проверить иждивенцев - запустить эту команду из окна командной строки. (пример, Диспетчер очереди печати)
sc enumdepend спулер
Информация в этой статье применима ко всем версиям Windows, включая Windows 10.
Одна небольшая просьба: если вам понравился этот пост, поделитесь, пожалуйста, этим?
Одна "крошечная" публикация от вас серьезно помогла бы росту этого блога. Несколько отличных предложений:- Приколи это!
- Поделитесь этим в своем любимом блоге + Facebook, Reddit
- Напишите об этом в Твиттере!