Windows에서 서비스를 어떻게 삭제합니까?


답변:


783

다음과 같이 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

5
SSDP 검색 서비스를 삭제 하시겠습니까? 로컬 네트워크에서 UPnP 장치를 감지하고 구성하는 데 사용되므로 삭제해서는 안됩니다. 방금 예로 사용되었습니다.
Lasse V. Karlsen 2018 년

5
아, 알 겠어요 서비스 삭제를 권장하지 않는다고 생각했습니다. 답변 해주셔서 감사합니다!
sgwill

16
이미 실수로 인해이 답변의 순수 자신의 SSDPSRV 서비스를 삭제 얼마나 많은 시스템 관리자 궁금 : P
빈센트 Vancalbergh

6
sc query state= all전체 서비스 목록을 얻는 데 사용 합니다. 기본 sc query은 비활성 (일명 비활성화) 서비스를 반환하지 않습니다.
tricasse

32
PowerShell을 사용하는 경우 sc에 별칭이 지정됩니다 set-content. 그래서 sc delete service실제로라는 파일이 만들어집니다 delete컨텐츠와를 service. Powershell에서이 작업을 수행하려면 sc.exe delete service대신 사용하십시오.
KFL

48

클릭 시작을 | 실행regedit : 열기 : 행을 입력 하십시오 . 확인을 클릭하십시오.

로 이동 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

왼쪽 분할 창을 아래로 스크롤하여 서비스 이름을 찾아서 마우스 오른쪽 단추로 클릭 한 후 삭제를 선택하십시오 .

시스템을 재부팅하십시오.


1
이는 서비스를 호스팅하는 실행 파일이 삭제 (제거되지 않음) 된 경우 선호되는 sc delete메커니즘으로 실패합니다. 감사.
holtavolt

17

사용 services.msc를 나 (시작> 제어판> 관리 도구> 서비스)을 해당 서비스를 찾을 수 있습니다. 서비스 이름과 실행 파일 경로를 보려면 두 번 클릭하십시오.

서비스 소유자에게 실마리가 있는지 EXE 버전 정보를 확인하고 가능한 경우 프로그램 추가 / 제거를 사용하여 완전히 제거하십시오.

명령 프롬프트에서 실패하면 :

sc stop servicexyz
sc delete servicexyz

다시 시작할 필요가 없습니다.


2
서비스 이름에 공백이 있으면 전체 이름을 인용 부호로 묶어야합니다 (예sc delete "Amazon Assistant Service"
Jan 'splite') K.

13
SC DELETE "service name"

관리자로 cmd에서 명령을 실행하지 않으면이 오류가 발생합니다.

openservice failed 5 액세스가 거부되었습니다


9

우리는 두 가지 방법으로 할 수 있습니다

레지스트리를 통해 Windows 서비스 제거

올바른 경로를 알고 있으면 레지스트리에서 서비스를 제거하는 것이 매우 쉽습니다. 내가 한 방법은 다음과 같습니다.

  1. 실행 을 Regedit 또는 Regedt32를

  2. 레지스트리 항목 "HKEY_LOCAL_MACHINE / SYSTEM / CurrentControlSet / Services"로 이동하십시오.

  3. 삭제하려는 서비스를 찾아서 삭제하십시오. 키를보고 서비스가 사용중인 파일을 확인하고 필요한 경우 삭제할 수도 있습니다.

명령 창을 통해 Windows 서비스 삭제

또는 명령 프롬프트를 사용하고 다음 명령을 사용하여 서비스를 삭제할 수도 있습니다.

sc 삭제

다음 명령을 사용하여 서비스를 만들 수도 있습니다

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

참고 : 서비스 관리자에서 목록을 업데이트하려면 시스템을 재부팅해야 할 수도 있습니다.


5
regedit 방법이 효과가 없었습니다. 서비스 관리자를 새로 고쳤을 때 여전히 서비스가 표시되었지만 설명을 표시 할 수 없다는 오류가 발생했습니다.
datguy

2
참고 : 서비스 관리자에서 목록을 업데이트하려면 시스템을 재부팅해야 할 수도 있습니다.
kombsh

2
아마도 regedit 접근 방식이 SC 명령보다 열등하므로 재부팅이 필요하지 않습니다.
datguy

4
이것은, 그릇된 방향으로 이끌다이 바보 goodle 해달라고 automactically의 검색 페이지에서이 답변을 showup주십시오 :( 내 서비스를 엉망 내가 그것을 신뢰하고 SOF 링크를 클릭하지 않고 맹목적으로 따라 나는 내 컴퓨터를 재설치해야했다.
아난드 Rockzz

레지스트리 방법에 감사드립니다. 내가 배신자 기계에서 할 수있는 유일한 방법.
frostymarvelous 2016 년

8

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에서 테스트되었습니다.


6

이들이 .NET 작성 서비스 인 경우 installu.exe를 / u와 함께 사용하여 C : \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727과 같은 .net 프레임 워크 폴더에서 / u 스위치를 사용하십시오.


6

위에서 설명한 것처럼 나는 다음을 실행했다.

sc delete ServiceName

그러나 PowerShell에서 실행하면서 작동하지 않았습니다.

PowerShell을 사용할 때는 PowerShell sc.exe에 기본 별칭이 sc할당되어 있으므로 PowerShell을 사용할 때는 전체 경로를 지정해야합니다 Set-Content. 유효한 명령이므로 실제로 오류 메시지가 표시되지 않습니다.

이 문제를 해결하기 위해 다음과 같이 실행했습니다.

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

2

나에게 전달 된 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

sname이 모두 한 줄에 소문자이므로 NameOfMyService가 아닌 nameofmyservice 일 수 있습니다.
도미니크 조지


0

나를 위해 만든 서비스는 제어판> 프로그램 및 기능에서 제거해야했습니다.


프로그램과 기능에 설치된 서비스를 어떻게 볼 수 있습니까
Nisha

내가 올바르게 기억한다면, 이것은 내가 생각했던 프로그램이 설치 된 후 로컬로 호스팅되기 때문에 서비스로 실행되었을 때였습니다. 로컬 호스트 : 8080으로 이동하여 로컬 웹 사이트를 볼 수 있습니다. 그것을 제거하기 위해 전체 프로그램을 사용해야했습니다.
Demodave

감사합니다. 명령 프롬프트를 사용하여 서비스를 설치했습니다. cmd pmpt에서 cmd를 사용하여 삭제했습니다. 답장을 보내 주셔서 다시 한 번 감사드립니다.
Nisha


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.