NT 서비스는 C++Builder와 Delphi의 4 이상 버전에서 위저드로 지원합니다.
File -> New의 다이얼로그에 보면 Service Application이 있는데, 이걸 선택하면 서비스모듈이 포함된
서비스 프로젝트가 생성되지요.
사실 NT 서비스 지원은 4.0 버전에서 그 이전의 버전인 3.0보다 나아진 몇 안되는 개선점중의 하나입니다.
그렇다고 3.0 이전 버전에서 전혀 불가능하지는 않습니다.
C++Builder는 Visual C++과 동일한 레벨의 코딩도 가능하므로, MS에서 안내하는 대로 API로 코딩하면 됩니다.
NT 서비스는 기본적으로는 일반 Win32 어플리케이션과 동일하지만, 추가적으로 구현해야 할 것들과 알아야
할 개념들이 꽤 많습니다. 그래서 4.0 이상의 서비스 위저드가 유용한 거구요.
API 레벨에서 서비스 프로그래밍을 하시려면, 돈을 전혀 안들이시고 해보시려면 MSDN을 뒤져가며 해야
될거구요, 아니면 책을 사보시는 것이 좋습니다.
제가 봤던 책이 두권인데 한권은 지금 찾을 수가 없네요.
기억나는 하나는 "Professional NT Services" 라는 책입니다.
번역서 :
http://www.wowbook.com/computer/book/info/book_detail.asp?isbn=ISBN89-7627-513-6 18,400원
원서 :
http://www.wowbook.com/computer/book/info/book_detail.asp?isbn=ISBN1-861001-30-4 65,550원
또... 꼭 API로 코딩하는 경우가 아니라도 서적이 크게 도움이 될 수 있습니다.
C++Builder와 Delphi의 헬프만 봐서는, 기본적인 방법론은 알 수 있지만 이론적인 배경을 자세히 알기가
힘들기 때문에 서적이 많은 도움이 됩니다.
물론, 아무래도 직접 API 레벨에서 코딩하는 것보단 4.0 버전 이상의 서비스 위저드를 이용하는 것이
훨씬 편하고 쉽습니다. 그래서 C++Builder가 Visual C++보다 우월한 것 아니겠습니까. 하하하.
한가지 일러둘 것은, C++Builder 4 Professional 버전에서는 출시될 때 기본적으로 서비스 지원이 빠져있고,
엔터프라이즈에서만 서비스 위저드가 포함되어 있습니다. 5 버전은 상관없구요.
그런데 출시된 이후에 볼랜드의 정책이 바뀌어서 프로페셔널에서도 서비스 위저드를 지원하도록 작은 패치를
내놓았습니다. 이걸 다운로드 하려면 아래 링크로 가보세요.
http://www.borland.com/devsupport/bcppbuilder/file_supplements.html
4.0 이상의 버전에서 서비스 위저드로 작업하는 경우에는, C++Builder 4 언리시드가 도움이 될 겁니다.
그리고 Dr. Bob의 사이트에 올려진 다음의 문서도 기본적인 이해에는 도움이 될 겁니다.
Borland C++Builder 4 NT Services
http://www.drbob42.com/cbuilder/services.htm
How To Write NT Services with C++Builder 4
http://www.drbob42.com/cbuilder/bcb4-nts.htm
그럼...
p.s.
한가지 빼먹었는데.. xius 이필호님의 홈에 가시면 서비스 프로그래밍에 대한 강좌가 있습니다.
http://www.xius.com/
(API 레벨이 아니고 서비스 위저드를 이용하는 내용입니다.)
홍성원 님이 쓰신 글 :
: 게시판을 찾아보니 NT service에 대한 것이 있긴 한데요.
: 제가 가지고 있는 씨빌더나 델파이 버전과는 차이가 있네요.
: 씨빌더3나 델파이3에서 NT나 2000의 service 프로그램을
: 작성하는 방법을 알려주세요.
: 감사합니다.
: