Criar um Windows Service em .NET que possa ser executado como Console

Esta tem sido uma semana forte com os desenvolvimentos em .NET, principalmente utilizando Windows Services. Seu uso é muito útil quanto ao auto-gerenciamento proporcionado pelo sistema operacional windows, além da gestão de eventos. Só tem um ponto que me incomoda no desenvolvimento de Serviços: DEBUG! A forma indicada pela própria Microsoft para isso é utilizar a função de Attach, porém isso requer que o serviço seja instalado e esteja em execução na máquina. Venhamos e convenhamos, imagina fazer isso a cada linha de código que você altere e queira ver o resultado.

Outra solução seria fazer comentar na classe Program a o processo de execução do de Service, criar uma instancia da classe Service e chamar o seu método principal, que inicie seu processo. Mas também não é muito prático, pois no momento de distribuir e instalar seu serviço, é preciso “lembrar” de descomentar seu código.

Continue lendo “Criar um Windows Service em .NET que possa ser executado como Console”