윈도우 시스템에서 서비스로 등록하기

3Rabbitz Book을 윈도우 OS에서 사용하는 경우에는 2가지 관리 상의 번거로운 점이 있습니다. 첫번째는 어플리케이션 도스창이 항상 화면에 떠 있어야만 해서 실수로 닫을 경우 어플리케이션이 종료되다는 것이고, 둘째는 어플리케이션을 부팅 후 항상 실행 시켜주어야 한다는 점입니다.

이 문제를 해결하기 위하여 어플리케이션을 서비스로 등록하여 서버 시작과 동시에 어플리케이션이 실행되며 실행 도스창 없이 어플리케이션이 실행되도록 설정하는 방법을 알려드리도록 하겠습니다.

윈도우 설정과 관련된 사항으로 3Rabbitz Book과는 관계가 없습니다. 따라서 과정에 사용되는 프로그램은 저작권과 관련하여 첨부해 드릴 수 없어서 링크만 제공드립니다.

배치파일(bat) 윈도우 서비스 등록 방법

윈도우의 서비스를 등록하는 방법은 윈도우 7 기준으로 "C:\Windows\System32" 위치의 sc.exe 프로그램을 이용합니다. 그러나 3Rabbitz Book은 배치파일(bat)을 이용하여 구동시키기 때문에 sc.exe 로는 서비스로 등록시킬 수가 없습니다.

배치 파일을 서비스로 등록하는 방법은 구글 검색을 통하여 확인하실 수 있습니다. 다양한 방법이 있지만 가장 많이 사용되는 방법은 Windows Server 2003 Resource Kit Tools을 사용하는 방법입니다.

Windows Server 2003 Resource Kit Tools을 이용하여 서비스 등록하기

마이크로소프트에서 윈도우 서버를 관리하기 위한 여러가지 도구를 모아놓은 Windows Server 2003 Resource Kit Tools을 이용하여 배치파일(bat)을 서비스로 등록 시킬 수 있습니다. 관련된 절차는 다음과 같습니다.

  1. Windows Server 2003 Resource Kit Tools 다운로드 및 실행

윈도우 버전에 따라 호환성 경고가 나타날 수가 있습니다. 그러나 원하시는 작업을 하시는 데는 문제가 없으니 프로그램 설치를 계속 하시기 바랍니다.

윈도우7 호완성 경고

  1. 설치시 필요한 정보를 입력하고 설치를 진행합니다.

Windows Server 2003 Resource Kit Tools 설치 마법사

설치시 입력하는 정보 중 설치 경로 정보는 추후에 파일 복사를 위해서 필요합니다.

설치 경로 결정

  1. 설치가 완료되면 설치된 디렉토리에서 instsrv.exe, srvany.exe 두 파일을 C:\WINDOWS\system32 디렉토리에 복사합니다.

  2. "명령 프롬프트(도스 창)"를 실행 합니다.

윈도우 비스타 이상 버전인 경우에는 "명령 프롬프트(도스창)" 실행 시 마우스 오른쪽 버튼을 이용하여 관리자 권한으로 실행하셔야 합니다. 그 이유는 시스템 설정 값을 바꾸어야 하기 때문에 기본으로 실행하실 경우 원하시는 작업을 진행하실 수 없기 때문입니다.

  1. 다음과 같은 명령어를 입력합니다. 3rabbitz라는 문자열은 추후 서비스의 이름으로 등록됩니다.

C:\Windows\system32>instsrv 3rabbitz C:\WINDOWS\system32\srvany.exe

The service was successfuly added!

Make sure that you go into the Control Panel and use
the Services applet to change the Account Name and
Password that this newly installed service will use
for its Security Context.

C:\Windows\system32>
  1. 명령 표시줄에 regedit를 입력하여 레지스트리 편집기를 실행합니다.

레지스트리 편집기 실행

  1. 등록한 서비스의 레지스트리를 찾습니다.

찾아야 하는 레지스트리
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\3rabbitz
  1. 해당 서비스 이름 레지스트리에 "새로 만들기 > 키"를 선택한다. 키의 이름은 Parameters로 합니다.

  2. 생성된 Parameters에서 "새로 만들기 > 문자열 값"을 선택한다. 문자열의 이름은 Application으로 합니다.

  3. 만들어진 값을 더블클릭한 후 값을 3Rabbitz 실행 파일(설치경로/bin/startup.bat) 경로를 입력합니다.

입력할 경로의 예시는 다음과 같습니다.
D:\3rabbitz\bin\startup.bat
  1. 다시 생성된 Parameters에서 "새로 만들기 > 문자열 값"을 선택한다. 문자열의 이름은 AppDirectory 로 합니다.

  2. 만들어진 값을 더블클릭한 후 값을 3Rabbitz 실행 파일(설치경로/bin/startup.bat)이 위치한 경로를 입력합니다.

입력할 경로 예시는 다음과 같습니다.
D:\3rabbitz\bin

레지스트리 설정이 완료된 모습

  1. 윈도우 제어판 > 관리 도구 > 로컬 서비스 보기를 선택하여 서비스 관리 도구를 실행시킵니다.

  2. 3rabbitz로 등록된 서비스를 확인하고 더블 클릭하여 3rabbitz 서비스를 엽니다.

  3. 시작 유형이 "자동"인지 확인하고 테스트를 위하여 시작 버튼을 클릭합니다.

윈도우 부팅 시에 자동으로 시작하지 않고 단지 도스창만 나타나지 않도록 하기 위해서는 시작 유형을 수동으로 변경하고 필요한 경우에는 직접 시작 버튼을 클릭하시면 됩니다.


자동으로 하신 경우 부팅할 때마다 3Rabbitz Book이 실행되어 메모리 등 시스템 자원을 차지합니다. 따라서 서버가 아닌 개인 PC에서 사용하실 때에는 수동으로 하고 사용이 필요하실 때마다 직접 시작하시기를 추천해 드립니다.

  1. 3Rabbitz Book이 정상적으로 시작되었는지 접속하여 확인합니다.

3rabbitz 서비스

3Rabbitz Book을 종료 시키기 위하여는 서비스의 중지 기능을 이용하시면 안됩니다. 서비스의 종료를 위해서는 3Rabbitz 종료 파일(설치경로/bin/shutdown.bat)을 실행시키셔야 합니다. 또한 서비스를 중지 시킨 후 재 시작하시기 위해서는 서비스를 중지 후 다시 시작하시면 됩니다.