Como eu faço um exe em um serviço no Windows?

2

Recentemente, criei um aplicativo com várias partes. Uma das partes é uma ferramenta de rede - ela sempre começa com o sistema operacional e nunca exibe qualquer tipo de mensagem. Ele, no entanto, inicia um console incrivelmente irritante, o qual é impossível se livrar sem fechar o programa em si (por favor, aceite este como dado). Eu decidi contornar esse problema iniciando o programa (é um *.exe ) como um serviço, impedindo-o de aparecer. Como o aplicativo será distribuído para vários computadores (daí a necessidade de uma ferramenta de rede em primeiro lugar). Eu preciso de uma maneira de fazer este programa instalar como um serviço (por isso, eu realmente não quero respostas que me dizem para passar por uma série de menus no Painel de Controle ou baixar um aplicativo de terceiros que tem que ficar em qualquer computador o serviço será executado em). Como posso fazer isso?

    
por user3677994 04.06.2014 / 04:26

3 respostas

2

No Windows NT Resource Kit, a Microsoft fornece uma ferramenta chamada srvany que executará um .exe como um serviço. Uma ferramenta que funciona melhor do que isso é o Gerenciador de serviços não-sugadores (nssm) .

Eu usei o nssm para transformar um executável do console python que é um servidor da web em um serviço que é executado quando o sistema é inicializado com êxito.

    
por 04.06.2014 / 05:34
0

A Microsoft compilou as etapas para criar um Serviço do Windows e instalá-lo em um computador remoto neste página . Há muitos passos para descrever aqui. Existem links adicionais para ajudá-lo com possíveis problemas.

    
por 04.06.2014 / 05:13
0

Existem muitas ferramentas de terceiros para executar um executável normal do Windows como um serviço.

A Bitsum criou esse utilitário, apenas na linha de comando, chamado MakeService (agora em distribuição limitada devido a abusos).

Eles podem fazer isso usando um stub de serviço que, em seguida, inicia o executável normal do Windows. Esse stub de serviço pode então controlar o processo iniciado, conforme necessário, em resposta a comandos de início, parada, etc. de serviço.

No entanto, se o aplicativo tiver alguma interatividade com o usuário, você encontrará o isolamento da sessão de serviço do sistema no NT6 +.

É triste que tenhamos que descontinuar o download instantâneo deste utilitário freeware, mas continuaremos a distribuí-lo para aqueles que têm necessidades legítimas. Está disponível em 32-bit e 64-bit x86 nativo.

Tenho certeza de que há outros utilitários semelhantes, incluindo o srvany.exe da Microsoft no Windows Resource Kit, como a resposta aceita recomenda. Faz o mesmo que o nosso MakeService fez / faz.

    
por 02.02.2016 / 20:00