Como: Instalar e desinstalar serviços do Windows

Aviso

Esta documentação não é para a versão mais recente do Serviço do Windows. Para obter o conteúdo mais recente sobre os Serviços do Windows usando BackgroundService e o modelo Serviço de Trabalho, consulte:

Se você estiver desenvolvendo um serviço do Windows com o .NET Framework, poderá instalar rapidamente seu aplicativo de serviço usando o utilitário de linha de comando InstallUtil.exe ou o PowerShell. Os desenvolvedores que desejam lançar um serviço do Windows que os usuários podem instalar e desinstalar podem usar o WiX Toolset gratuito ou ferramentas comerciais como Advanced Installer, InstallShield e outros. Para obter mais informações, consulte Criar um pacote de instalação (área de trabalho do Windows).

Aviso

Se pretender desinstalar um serviço do computador, não siga os passos descritos neste artigo. Em vez disso, descubra qual programa ou pacote de software instalou o serviço e escolha Aplicativos em Configurações para desinstalar esse programa. Muitos serviços são partes integrantes do Windows; Se você removê-los, você pode causar instabilidade do sistema.

Para usar as etapas neste artigo, primeiro você precisa adicionar um instalador de serviço ao seu serviço do Windows. Para obter mais informações, consulte Passo a passo: Criando um aplicativo de serviço do Windows.

Você não pode executar projetos de serviço do Windows diretamente do ambiente de desenvolvimento do Visual Studio pressionando F5. Antes de executar o projeto, você deve instalar o serviço no projeto.

Gorjeta

Você pode usar o Gerenciador de Servidores para verificar se instalou ou desinstalou o serviço.

Instalar usando InstallUtil.exe utilitário

  1. No menu Iniciar, selecione o diretório de versão> do Visual Studio <e, em seguida, selecione Prompt de comando do desenvolvedor para a versão> do <VS.

    O prompt de comando do desenvolvedor para Visual Studio é exibido.

  2. Acesse o diretório onde o arquivo executável compilado do seu projeto está localizado.

  3. Execute InstallUtil.exe a partir do prompt de comando com o executável do seu projeto como parâmetro:

    installutil <yourproject>.exe
    

    Se você estiver usando o prompt de comando do desenvolvedor para Visual Studio, InstallUtil.exe já está no caminho do sistema. Caso contrário, você pode adicioná-lo ao caminho ou usar o caminho totalmente qualificado para invocá-lo. Esta ferramenta é instalada com o .NET Framework em %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>.

    Por exemplo:

    • Para a versão de 32 bits do .NET Framework 4 ou 4.5 e posterior, se o diretório de instalação do Windows for C:\Windows, o caminho padrão será C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe.
    • Para a versão de 64 bits do .NET Framework 4 ou 4.5 e posterior, o caminho padrão é C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe.

Desinstalar usando o utilitário InstallUtil.exe

  1. No menu Iniciar, selecione o diretório de versão> do Visual Studio <e, em seguida, selecione Prompt de comando do desenvolvedor para a versão> do <VS.

    O prompt de comando do desenvolvedor para Visual Studio é exibido.

  2. Execute InstallUtil.exe a partir do prompt de comando com a saída do seu projeto como parâmetro:

    installutil /u <yourproject>.exe
    
  3. Depois que o executável de um serviço for excluído, o serviço ainda poderá estar presente no Registro. Se for esse o caso, use o comando sc delete para remover a entrada para o serviço do registro.

Instalar usando o PowerShell

  1. No menu Iniciar, selecione o diretório Windows PowerShell e, em seguida, selecione Windows PowerShell.

  2. Acesse o diretório onde o arquivo executável compilado do seu projeto está localizado.

  3. Execute o cmdlet New-Service com um nome de serviço e a saída do seu projeto como argumentos:

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

Desinstalar utilizando o PowerShell

  1. No menu Iniciar, selecione o diretório Windows PowerShell e, em seguida, selecione Windows PowerShell.

  2. Execute o cmdlet Remove-Service com o nome do seu serviço como argumento:

    Remove-Service -Name "YourServiceName"
    

    Nota

    Você deve ter o PowerShell 6 ou posterior para usar esse cmdlet. Para obter informações sobre como atualizar o PowerShell, consulte Instalando o PowerShell no Windows.

  3. Depois que o executável de um serviço for excluído, o serviço ainda poderá estar presente no Registro. Se for esse o caso, use o comando sc delete para remover a entrada para o serviço do registro.

    sc.exe delete "YourServiceName"
    

Consulte também