본문 바로가기
컴퓨터/Windows

Windows 서비스 생성 및 삭제

by Spring13 2022. 12. 28.

Windows 서비스는 오랜 시간 동안 실행되며 특정한 기능을 수행하는 실행 파일(.exe)이다.

이러한 서비스는 컴퓨터가 부팅될 때 자동으로 시작될 수 있으며, 일시 중지를 하거나 다시 시작할 수 있으며, 이 과정에서 보통 사용자 인터페이스를 표시하지 않는다.

 

이러한 서비스의 내용을 살펴보려면

'시작 메뉴 우클릭 > 컴퓨터 관리 > 서비스 및 응용 프로그램 > 서비스'

로 진입하면 서비스의 내용을 확인할 수 있다.

 

서비스 화면


이러한 서비스들은 'svchost.exe'가 담당하는 '서비스 호스트'와 그 외 서비스 등록이 가능한 프로그램으로 구성된다.

 

'컴퓨터 관리'의 '서비스' 항목을 살펴보면 이와 같은 서비스들을 따로 추가하거나 삭제할 수 있는 방법을 제공하지 않는다.

따라서 서비스 항목들을 추가 삭제하기 위해서는 'SC'명령어를 이용하여야 한다.

 

이 글에서는 서비스를 등록하는 방법과 삭제하는 방법을 알아보고자 한다.

 

서비스를 '등록' 하는 데에는 프로그램의 제한이 딱히 없지만,

서비스를 통해 모든 프로그램을 '실행'할 수는 없다.

서비스를 통해 실행할 수 있도록 프로그래밍되어 있어야 서비스를 통해 실행할 수 있다. 

 

 


서비스 생성


먼저 서비스를 생성하는 방법이다.

먼저 명령 프롬프트를 관리자 권한으로 실행한다.

예시로 test라는 이름의 서비스를 생성한다. 여담으로 CMD는 서비스를 이용하여 실행할 수 없다.

SC create "서비스 이름" binPath= "프로그램 경로"

[SC create "서비스 이름" binPath= "프로그램 경로"]를 입력한다.

"서비스 이름"에는 서비스의 이름을, "프로그램 경로"에는 서비스에 등록하고자 하는 프로그램의 경로를 입력한다.

 

CMD와 같이 서비스로 실행 불가능한 프로그램이라도 일단 서비스 생성은 가능하다.

서비스가 생성되었다면 'CreateService 성공'이라는 문구가 뜬다.

 

서비스가 생성된 것을 확인할 수 있다.

 

일반사용자계정으로 실행하였을때. 액세스를 거부한다

관리자 권한으로 실행하지 않으면 액세스를 거부한다.


CMD는 서비스로 등록 불가능하다.

상술하였듯 서비스를 통하여 실행할 수 없는 프로그램은 서비스를 실행하지 못한다며 위와 같은 창이 뜬다.

 


서비스 제거


다음은 서비스를 제거하는 방법이다.

'test' 서비스를 종료

서비스가 실행 중이라면 서비스를 제거할 수 없다.

SC stop "서비스 이름"

 

먼저 [SC stop "서비스 이름"]을 입력하여 서비스를 중지한다.

 

'test' 서비스를 제거

SC delete "서비스 이름"

[SC delete "서비스 이름"]을 입력하여 서비스를 제거한다.

 

서비스 제거 성공


만약 컴퓨터 실행 시 자동으로 프로그램을 실행하고자 하는 목적이라면 작업 스케쥴러를 이용하는 것이 좋다.


참고 자료

더보기
728x90
반응형

'컴퓨터 > Windows' 카테고리의 다른 글

Cipher /w:  (2) 2023.02.08
Windows RE에 업데이트 적용하기  (0) 2023.01.11
PCem  (0) 2022.12.26
Windows 파일 암호화 시스템(EFS)에 대한 정보  (3) 2022.12.18
Windows 부팅, 종료 중 매우 자세한 상태 메시지 표시  (0) 2022.12.05

댓글