내보내기(0) 인쇄
모두 확장

서비스에서 관리 작업 수행

Visual Studio .NET 2003

서비스에서 서비스의 시작과 중지, 일시 중지 및 다시 시작과 같은 다양한 표준 관리 작업을 수행할 수 있습니다. 이러한 작업은 서버 탐색기를 통해 실행하거나 기존 서비스에 연결된 ServiceController 구성 요소 인스턴스에서 메서드를 호출하여 실행할 수 있습니다.

일반적으로 서비스 제작 시 특정 작업과 관련된 동작을 사용자 지정하는 코드를 작성합니다. 예를 들어, 서비스는 OnPause 명령에 응답하는 코드를 포함할 수 있습니다. 이 경우 서비스가 일시 중지되기 전에 일시 중지 작업에 대한 사용자 지정 처리가 실행됩니다. 서비스의 기능 정의에 대한 자세한 내용은 Windows 서비스 만들기를 참조하십시오.

서비스에 사용 가능한 특정 작업은 해당 속성에 기반합니다. 예를 들어, 특정 서비스의 CanStop 속성을 false로 설정할 수 있습니다. 이 설정은 해당 특정 서비스의 중지 명령을 사용할 수 없도록 렌더링합니다. 서버 탐색기에서 서비스를 중지하면 필수 메뉴 항목이 흐릿하게 표시됩니다. 코드에서 서비스를 중지하면 "<servicename>을 중지하지 못했습니다."라는 오류 메시지가 발생합니다.

서버 탐색기에서 관리 작업을 수행하려면

  1. 서버 탐색기의 목록에 원하는 서버가 없으면 추가합니다. 자세한 내용은 서버 탐색기 액세스 및 초기화를 참조하십시오.
    참고   Visual Basic .NET Standard Edition 및 Visual C# .NET Standard Edition에서는 서버 탐색기의 서버 노드를 사용할 수 없습니다. 자세한 내용은 Visual Basic Standard Edition 기능 또는 Visual C# Standard Edition 기능을 참조하십시오.
  2. 서비스 노드를 확장한 다음 관리 작업을 수행할 서비스를 찾습니다.
  3. 서비스 이름을 마우스 오른쪽 단추로 클릭한 다음 수행할 작업을 클릭합니다.

관리 작업을 프로그래밍 방식으로 수행하려면

  1. ServiceController 클래스의 인스턴스를 만들고 인스턴스가 관리할 서비스와 상호 작용하도록 구성합니다. 자세한 내용은 ServiceController 구성 요소 인스턴스 만들기를 참조하십시오.
  2. 서비스를 시작, 중지, 일시 중지 또는 계속하는 적절한 메서드를 호출합니다.
       이러한 명령에 대한 해당 속성을 쿼리하여 서비스가 요청에 응답하는지 확인할 수 있습니다. 즉 해당 서비스의 CanStop 속성을 쿼리하는 조건문을 작성하여 Start 메서드를 호출하기 전에 이 속성이 true로 설정되어 있는지 확인할 수 있습니다.

    다음 예제는 명령을 발생시키기 전에 서비스가 지정된 명령을 수용할 수 있는지 확인하는 방법을 보여 줍니다.

    ' Visual Basic
    If myController.CanStop Then
       myController.Stop()
    End If
    
    // C#
    if (myController.CanStop)
    {
       myController.Stop();
    }
    

참고 항목

기존 서비스와 상호 작용 소개 | ServiceController 구성 요소 인스턴스 만들기 | 서비스 목록 검색 | 서버 탐색기 액세스 및 초기화 | Windows 서비스 만들기

Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
표시:
© 2014 Microsoft