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





Щелкните Начинать | Пробег и введите regedit в строке Open :. Щелкните ОК.
Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Прокрутите вниз левую панель, найдите имя службы, щелкните его правой кнопкой мыши и выберите Удалить.
Перезагрузите систему.
Используйте команду 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 в локальной сети, удалять его не следует. Его просто использовали в качестве примера.
Ооо, понятно, да. Я думал, вы имели в виду, что удаление служб не рекомендуется. Спасибо за ответ!
Интересно, сколько системных администраторов уже случайно удалили свою службу SSDPSRV исключительно из-за этого ответа: p
Следует отметить, что вы должны запускать CMD от имени администратора. (Щелкните правой кнопкой мыши CMD и выберите «Запуск от имени администратора»), чтобы выполнить многие из этих команд.
Используйте sc query state= all, чтобы получить полный список услуг; базовый sc query не будет возвращать неактивные (также известные как отключенные) службы.
@tricasse Спасибо! Я добавил ваше замечание к исходному ответу.
Обратите внимание, что если вы используете PowerShell, sc имеет псевдоним set-content. Таким образом, sc delete service фактически создаст файл с именем delete с содержимым service. Чтобы сделать это в Powershell, используйте вместо этого sc.exe delete service.
Если вы используете powershell ... замените sc.exe вместо sc, в противном случае функция вернется без удаления службы.
Обратите внимание, что если в названии сервиса есть пробелы, необходимо заключить полное название в кавычки - sc delete "Amazon Assistant Service". Кроме того, точное название службы можно найти в реестре HKLM\SYSTEM\CurrentControlSet\Services\{xxyy}\DisplayName.
К вашему сведению: для поклонников PS, похоже, это недавно было добавлено в Ядро PowerShell (NB: отличается от стандартного PowerShell). Запрос на включение: github.com/PowerShell/PowerShell/pull/4858 Код: github.com/PowerShell/PowerShell/blob/master/src/…
SC STOP shortservicename SC DELETE shortservicename
в PowerShell используйте «C: \ Windows \ System32 \ sc.exe» (или «sc.exe») вместо «SC»
Спасибо! Эта заметка о PowerShell была эпической, довольно страшно, сколько времени я мог бы потерять без нее.
@eglasius Спасибо @zelusp за это, так как он редактировал это.
sc удалить имя
Используйте services.msc или (Пуск> Панель управления> Администрирование> Службы), чтобы найти нужную службу. Дважды щелкните, чтобы увидеть имя службы и путь к исполняемому файлу.
Проверьте информацию о версии exe, чтобы узнать о владельце службы, и используйте «Установка и удаление программ», чтобы выполнить полное удаление, если это возможно.
В противном случае из командной строки:
sc stop servicexyz
sc delete servicexyz
Никакого перезапуска не требуется.
Обратите внимание, что если в названии службы есть пробелы, вы должны заключить полное имя в кавычки - например, sc delete "Amazon Assistant Service".
Вот переданный мне сценарий 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 все в нижнем регистре в строке ранее.
Если это службы, созданные .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 через реестр
Удалить службу из реестра очень легко, если вы знаете правильный путь. Вот как я это сделал:
Запустите Regedit или Regedt32
Перейдите к записи реестра «HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services»
Найдите службу, которую вы хотите удалить, и удалите ее. Вы можете посмотреть на ключи, чтобы узнать, какие файлы использовала служба, а также удалить их (при необходимости).
Удалить службу Windows через командное окно
Кроме того, вы также можете использовать командную строку и удалить службу с помощью следующей команды:
sc удалить
Вы также можете создать службу, используя следующую команду
sc create "MorganTechService" binpath = "C: \ Program Files \ MorganTechSPace \ myservice.exe"
Примечание. Возможно, вам придется перезагрузить систему, чтобы список обновился в диспетчере служб.
Метод regedit у меня не сработал. Когда я обновил диспетчер служб, он по-прежнему отображал службу, но с ошибкой, указывающей, что он не может отобразить описание.
Примечание. Возможно, вам придется перезагрузить систему, чтобы список обновился в диспетчере служб.
Возможно, но из-за этого подход regedit уступает команде SC, которая не требует перезагрузки.
Это испортило мои услуги :( пожалуйста, не вводите в заблуждение эту глупую штуку, автоматически показывайте этот ансер на его странице поиска, и я доверял ему и слепо следил за ним, не нажимая ссылку SOF, и мне пришлось повторно создать образ моей машины.
спасибо за метод реестра. только так я мог сделать это на ренегатской машине.
и это действительно работает. иногда с помощью SC Delete вам все равно нужно перезапускать.
@AnandRockzz sc delete также удалил бы ключ reg, как вы это делали вручную. Вам просто нужно будет перезагрузить компьютер, чтобы удалить его из services.msc. Если он не был удален после перезагрузки, вашим следующим путем будет удаление связанного приложения, которое поместило службу туда в первую очередь. Повторное создание образа машины было очень радикальным, особенно потому, что вы могли просто поискать в реестре имя этой службы и удалить их.
@AnandRockzz 1-й: большое спасибо за предупреждение! 2-й: проголосуйте против этого ответа (если вы еще этого не сделали), если он неправильный / вредный. Кроме того, в результате Google, который показывает фрагмент этого ответа, вы можете оставить отзыв и сообщить Google, что это неправильно / вредно. Если это сделает достаточное количество людей, Google может удалить его.
Для меня созданную мной службу пришлось удалить в Панели управления> Программы и компоненты.
как вы можете увидеть службы, установленные в программах и функциях
Если я правильно помню, это было тогда, когда у меня была программа, которая, как мне кажется, была splunk, после установки запускалась как служба, потому что она размещалась локально, вы могли перейти на localhost: 8080 для просмотра локального веб-сайта. Для того, чтобы убрать пришлось всю прогу.
Спасибо. Я установил службы с помощью командной строки. Я удалил с помощью cmd в cmd pmpt. Еще раз спасибо за ответ.
Перед удалением службы необходимо просмотреть зависимости.
Вы можете проверить это:
Откройте 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
Вы можете использовать мою небольшую утилиту для редактирования списка сервисов Менеджер по обслуживанию
Вы можете выбрать любую услугу> Изменить> Удалить. Метод работает сразу, перезагрузка не требуется.
Исполняемый файл: [Скачать]
Исходный код: [Скачать]
Сообщение в блоге: [BlogLink]
Класс редактора сервиса: WinServiceUtils.cs
Это хороший запасной вариант, когда исполняемый файл, на котором размещена служба, был удален (не удален), а предпочтительный механизм
sc deleteне работает. Спасибо.