방법: Windows 서비스 만들기

서비스를 만들 때 Windows 서비스라는 Visual Studio 프로젝트 템플릿을 사용할 수 있습니다. 이 템플릿은 적절한 클래스와 네임스페이스를 참조하고, 서비스에 대한 기본 클래스로부터의 상속을 설치하고, 재정의할 만한 몇 가지 메서드를 재정의하여 대부분의 작업을 자동으로 수행합니다.

참고

Visual Studio Standard Edition에서는 Windows 서비스 템플릿과 관련 기능을 사용할 수 없습니다.

최소한의 기능을 가진 서비스를 만드는 방법은 다음과 같습니다.

  • ServiceName 속성을 설정합니다.

  • 서비스 응용 프로그램에 필요한 설치 관리자를 만듭니다.

  • OnStartOnStop 메서드에 대한 코드를 재정의하고 지정하여 서비스가 동작하는 방법을 사용자 지정합니다.

응용 프로그램에 설치 관리자를 추가한 다음 컴파일된 프로젝트 파일을 설치하는 작업과 서비스를 설치하는 데 필요한 설치 관리자를 실행하는 작업을 수행하는 설치 프로젝트를 만듭니다. 완전한 설치 프로젝트를 만들려면 서비스 프로젝트의 출력을 설치 프로젝트에 추가한 다음 서비스를 설치하기 위한 사용자 지정 동작을 추가합니다. 설치 프로젝트에 대한 자세한 내용은 설치 및 배포 프로젝트를 참조하십시오. 사용자 지정 작업에 대한 자세한 내용은 연습: 사용자 지정 작업 만들기를 참조하십시오.

Windows 서비스 응용 프로그램을 만들려면

  1. Windows 서비스 프로젝트를 만듭니다.

    참고

    템플릿을 사용하지 않고 서비스를 작성하는 방법에 대한 자세한 내용은 방법: 프로그래밍 방식으로 서비스 작성을 참조하십시오.

  2. 속성 창에서 서비스에 대한 ServiceName 속성을 설정합니다.

    참고

    ServiceName 속성 값은 설치 관리자 클래스에 기록된 이름과 항상 일치해야 합니다. 이 속성을 변경하면 설치 관리자 클래스의 ServiceName 속성도 업데이트해야 합니다.

  3. 다음 속성을 설정하여 서비스 작동 방법을 지정합니다.

    속성

    설정

    CanStop

    True로 설정하면 서비스의 실행 중지 요청이 허용됩니다. false로 설정하면 서비스가 중지되지 않습니다.

    CanShutdown

    True로 설정하면 서비스가 실행되는 컴퓨터가 종료될 때 서비스가 OnShutdown 프로시저 호출을 활성화하여 알림을 수신할 수 있습니다.

    CanPauseAndContinue

    True로 설정하면 서비스의 일시 중지 또는 다시 시작 요청이 허용됩니다. false로 설정하면 서비스를 일시 중지하거나 다시 시작할 수 없습니다.

    CanHandlePowerEvent

    True 로 설정하면 컴퓨터의 전원 상태에 대한 변경 알림을 서비스에서 처리할 수 있습니다. false로 설정하면 이러한 변경 내용을 서비스에 알리지 않습니다.

    AutoLog

    True로 설정하면 서비스가 동작을 수행할 때 응용 프로그램 이벤트 로그에 정보가 되는 엔트리를 씁니다. false로 설정하면 이 기능을 사용하지 않습니다. 자세한 내용은 방법: 서비스에 대한 정보 로깅을 참조하십시오.

    참고참고
    기본적으로 AutoLog는 true로 설정됩니다.

    참고

    CanStop 또는 CanPauseAndContinue 를 false로 설정하면 서비스 제어 관리자의 해당 메뉴 옵션으로 서비스를 중지, 일시 중지 또는 계속할 수 없습니다.

  4. 코드 편집기에 액세스하여 OnStartOnStop 프로시저에 대해 원하는 처리를 입력합니다.

  5. 기능을 정의할 다른 모든 메서드를 재정의합니다.

  6. 서비스 응용 프로그램에 필요한 설치 관리자를 추가합니다. 자세한 내용은 방법: 서비스 응용 프로그램에 설치 관리자 추가를 참조하십시오.

  7. 빌드 메뉴에서 솔루션 빌드를 선택하여 프로젝트를 빌드합니다.

    참고

    F5 키를 눌러 프로젝트를 실행하지 마십시오. 이 방법으로는 서비스 프로젝트를 실행할 수 없습니다.

  8. 서비스를 설치합니다. 자세한 내용은 방법: 서비스 설치 및 제거를 참조하십시오.

참고 항목

작업

방법: 프로그래밍 방식으로 서비스 작성

방법: 서비스 응용 프로그램에 설치 관리자 추가

방법: 서비스에 대한 정보 로깅

방법: 서비스 시작

방법: 서비스에 대한 보안 컨텍스트 지정

방법: 서비스 설치 및 제거

연습: 구성 요소 디자이너에서 Windows 서비스 응용 프로그램 만들기

개념

Windows 서비스 응용 프로그램 소개