방법: Windows 서비스 설치 및 제거

Warning

이 설명서는 최신 버전의 Windows Service를 위한 것이 아닙니다. BackgroundService 및 Worker Service 템플릿을 사용하는 Windows Services의 최신 콘텐츠는 다음을 참조하세요.

.NET Framework를 사용하여 Windows 서비스를 개발하는 경우 InstallUtil.exe 명령줄 유틸리티 또는 PowerShell을 사용하여 서비스 앱을 빠르게 설치할 수 있습니다. 사용자가 설치하고 제거할 수 있는 Windows 서비스를 릴리스하려는 개발자는 별도의 비용이 없는 WiX ToolsetAdvanced Installer, InstallShield 등의 상용 도구를 사용할 수 있습니다. 자세한 내용은 설치 관리자 패키지 만들기(Windows 데스크톱)를 참조하세요.

Warning

서비스를 컴퓨터에서 제거하려면 이 문서의 단계를 수행하는 대신 서비스를 설치한 프로그램 또는 소프트웨어 패키지를 확인한 다음, 설정에서 을 선택하여 해당 프로그램을 제거합니다. 많은 서비스는 Windows의 필수 요소이므로 제거하는 경우 시스템이 불안정해질 수 있습니다.

이 문서의 단계를 수행하려면 먼저 Windows 서비스에 서비스 설치 관리자를 추가해야 합니다. 자세한 내용은 연습: Windows 서비스 앱 만들기를 참조하세요.

F5 키를 눌러 Visual Studio 개발 환경에서 직접 Windows 서비스 프로젝트를 실행할 수 없습니다. 프로젝트를 실행하려면 먼저 프로젝트에 서비스를 설치해야 합니다.

서버 탐색기를 사용하여 서비스가 설치되거나 제거되었는지 확인할 수 있습니다.

InstallUtil.exe 유틸리티를 사용하여 설치

  1. 시작 메뉴에서 Visual Studio <version> 디렉터리를 선택한 다음, Developer Command Prompt for VS <version>을 선택합니다.

    Visual Studio용 개발자 명령 프롬프트가 나타납니다.

  2. 프로젝트의 컴파일된 실행 파일이 있는 디렉터리에 액세스합니다.

  3. 프로젝트의 실행 파일을 매개 변수로 사용하여 명령 프롬프트에서 InstallUtil.exe를 실행합니다.

    installutil <yourproject>.exe
    

    Visual Studio용 개발자 명령 프롬프트를 사용하는 경우 InstallUtil.exe가 이미 시스템 경로에 있습니다. 그렇지 않으면 해당 파일을 경로에 추가하거나 정규화된 경로를 사용하여 호출하면 됩니다. 이 도구는 %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>에 .NET Framework와 함께 설치됩니다.

    예시:

    • 32비트 버전의 .NET Framework 4 또는 4.5 이상인 경우 Windows 설치 디렉터리가 C:\Windows이면 기본 경로는 C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe입니다.
    • 64비트 버전의 .NET Framework 4 또는 4.5 이상인 경우 기본 경로는 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe입니다.

InstallUtil.exe 유틸리티를 사용하여 제거

  1. 시작 메뉴에서 Visual Studio <version> 디렉터리를 선택한 다음, Developer Command Prompt for VS <version>을 선택합니다.

    Visual Studio용 개발자 명령 프롬프트가 나타납니다.

  2. 프로젝트의 출력을 매개 변수로 사용하여 명령 프롬프트에서 InstallUtil.exe를 실행합니다.

    installutil /u <yourproject>.exe
    
  3. 서비스의 실행 파일을 삭제해도 서비스가 레지스트리에 남아 있을 수 있습니다. 이러한 경우에는 sc delete 명령을 사용하여 레지스트리에서 서비스의 항목을 제거합니다.

PowerShell을 사용하여 설치

  1. 시작 메뉴에서 Windows PowerShell 디렉터리를 선택한 다음, Windows PowerShell을 선택합니다.

  2. 프로젝트의 컴파일된 실행 파일이 있는 디렉터리에 액세스합니다.

  3. 서비스 이름과 프로젝트의 출력을 인수로 사용하여 New-Service cmdlet을 실행합니다.

    New-Service -Name "YourServiceName" -BinaryPathName <yourproject>.exe
    

PowerShell을 사용하여 제거

  1. 시작 메뉴에서 Windows PowerShell 디렉터리를 선택한 다음, Windows PowerShell을 선택합니다.

  2. 서비스 이름을 인수로 사용하여 Remove-Service cmdlet을 실행합니다.

    Remove-Service -Name "YourServiceName"
    

    참고 항목

    이 cmdlet을 사용하려면 PowerShell 6 이상이 있어야 합니다. PowerShell 업데이트에 대한 자세한 내용은 Windows에 PowerShell 설치를 참조하세요.

  3. 서비스의 실행 파일을 삭제해도 서비스가 레지스트리에 남아 있을 수 있습니다. 이러한 경우에는 sc delete 명령을 사용하여 레지스트리에서 서비스의 항목을 제거합니다.

    sc.exe delete "YourServiceName"
    

참고 항목