Pagina inicial » como » Como executar qualquer programa como um serviço de segundo plano no Windows

    Como executar qualquer programa como um serviço de segundo plano no Windows

    Se você for como a maioria dos usuários do Windows, você tem muitos pequenos utilitários que são executados quando você inicia o Windows. Enquanto isso funciona muito bem para a maioria dos aplicativos, há alguns que seria bom começar mesmo antes de um usuário efetuar login no PC. Para fazer isso, você precisará executar o aplicativo como um serviço do Windows.

    Os serviços do Windows são uma classe especial de programas configurados para serem iniciados e executados em segundo plano, geralmente sem qualquer tipo de interface de usuário e sem a necessidade de um usuário efetuar login no PC. Muitos jogadores e usuários avançados os conhecem como aquelas coisas que você usou para desativar para ajudar a acelerar o seu sistema, embora isso realmente não seja mais necessário.

    A principal vantagem de executar um aplicativo como um serviço é que você pode ter um programa iniciado antes de um usuário efetuar login. Isso pode ser particularmente importante em aplicativos que fornecem serviços importantes que você deseja disponibilizar quando estiver longe do computador.

    Um exemplo perfeito disso é o Plex, um aplicativo de servidor de mídia que pode transmitir conteúdo local para praticamente qualquer dispositivo que você possui. Claro, você poderia deixá-lo sentado na bandeja do sistema como um programa normal, mas e se o computador for reiniciado devido a uma queda de energia ou atualizações agendadas? Até você entrar novamente no PC, o Plex não estará disponível. Isso é irritante se você tiver que correr para outra sala para iniciar o Plex de volta enquanto sua pipoca esfria, e super irritante se você estiver fora da cidade e tentando transmitir sua mídia pela Internet. Configurar o Plex como um serviço resolveria esse problema.

    Antes de começar, você deve estar ciente de algumas advertências importantes para executar um aplicativo como um serviço:

    • O aplicativo não colocará um ícone na bandeja do sistema. Se você precisar da interface disponível regularmente para um aplicativo, talvez não seja mais adequado para executar como um serviço.
    • Quando você precisar fazer alterações ou atualizações de configuração, será necessário interromper o serviço, executar o programa como um aplicativo comum, fazer o que for necessário, interromper o programa e iniciar o serviço novamente.
    • Se o programa já estiver configurado para ser executado quando o Windows for iniciado, você precisará desativá-lo para não ter duas instâncias em execução. A maioria dos programas tem uma opção na interface para alternar essa configuração. Outros podem se adicionar à sua pasta de inicialização, para que você possa removê-los de lá.

    Pronto para rolar? Vamos falar sobre como configurá-lo.

    Etapa 1: Instalar o SrvStart

    Para executar um aplicativo como um serviço, você precisará de um pequeno utilitário de terceiros. Existem vários por aí, mas o nosso favorito é o SrvStart. Ele foi originalmente projetado para o Windows NT e funcionará com praticamente qualquer versão do Windows a partir do Windows XP.

    Para começar, vá para a página de download do SrvStart e pegue o utilitário. O download contém apenas quatro arquivos (dois arquivos DLL e dois arquivos EXE). Não há instalador; em vez disso, copie-os para o computador C: \ Windows pasta estes para sua pasta principal do Windows para “instalar” SrvStart.

    Nós também vamos supor que você já instalou e configurou qualquer programa que você vai transformar em um serviço, mas se você não tiver, agora seria um bom momento para fazer isso também.

    Etapa 2: Criar um arquivo de configuração para o novo serviço

    Em seguida, você desejará criar um arquivo de configuração que o SrvStart lerá para criar o serviço. Você pode fazer muito com o SrvStart e ler todos os detalhes sobre todas as opções de configuração na página de documentação. Para este exemplo, vamos usar apenas dois comandos: comece, que especifica o programa para lançar, e shutdown_method, que informa ao SrvStart como fechar o programa quando o respectivo serviço é interrompido.

    Abra o Bloco de Notas e crie seu arquivo de configuração usando o formato abaixo. Aqui, estamos usando o Plex, mas você pode criar um arquivo para qualquer programa que queira executar como um serviço. o comece comando simplesmente especifica o caminho onde reside o arquivo executável. Para o shutdown_method comando, estamos usando o winmessage parâmetro, que faz com que o SrvStart envie uma mensagem de fechamento do Windows para qualquer janela aberta pelo serviço.

    [Plex] startup = "C: \ Arquivos de programas (x86) \ Plex \ Servidor de mídia do Plex \ Plex Media Server.exe" shutdown_method = winmessage

    Obviamente, ajuste o caminho e o nome de acordo com o programa que você está lançando.

    Salve o novo arquivo de configuração onde desejar e substitua a extensão .txt por uma extensão .ini. Anote o nome do arquivo, pois precisaremos dele na próxima etapa. Para facilitar a digitação no Prompt de Comando, sugerimos que você salve este arquivo temporariamente na sua unidade C:.

    Etapa 3: usar o prompt de comando para criar o novo serviço

    Sua próxima etapa é usar o comando do Service Controller (SC) do Windows para criar o novo serviço com base nos critérios do seu arquivo de configuração. Abra o Prompt de Comando clicando com o botão direito do mouse no menu Iniciar (ou pressionando Windows + X), escolhendo “Prompt de Comando (Admin)” e clicando em Sim para permitir que ele seja executado com privilégios administrativos.

    No prompt de comando, use a seguinte sintaxe para criar o novo serviço:

    SC CREATE Displayname = "" binpath = "srvstart.exe -c" start = 

    Há algumas coisas a serem observadas nesse comando. Primeiro, cada sinal de igual (=) tem um espaço após ele. Isso é obrigatório. Também o valor é inteiramente com você. E, finalmente, para o valor, você vai querer usar auto para que o serviço inicie automaticamente com o Windows.

    Então, no nosso exemplo do Plex, o comando ficaria assim:

    SC CREATE Plex Displayname = "Plex" binpath = "srvstart.exe Plex -c C: PlexService.ini" start = auto

    Sim, você leu certo: eu usei C: PlexService.ini ao invés de C: \ PlexService.ini . O comando requer que você remova a barra.

    Quando você executa o comando, você deve receber uma mensagem de SUCESSO se tudo correr bem.

    Deste ponto em diante, o novo serviço será executado sempre que o Windows for iniciado. Se você abrir a interface do Windows Services (basta clicar em Iniciar e digitar “Serviços”), poderá localizar e configurar o novo serviço como faria com qualquer outro.

    E isso é tudo que existe para isso. Se você tem aplicativos que iniciam com o Windows e prefere que eles sejam iniciados sem a necessidade de um usuário para fazer login, é fácil transformar qualquer aplicativo em um serviço. Nós apenas tocamos no método básico para criar e executar um novo serviço, mas há muito mais que você pode fazer com o SrvStart para ajustar como um serviço é executado. Não deixe de conferir a documentação para saber mais.