Nada como facilitar a vida da equipe de suporte no momento de instalar um serviço no servidor da empresa. Geralmente, os programadores de serviços utilizam o installutil passando como parâmetro o endereço do arquivo .exe. Funciona sem qualquer problema, mas porque não facilitar a vida do suporte e ao mesmo evitar erro?

Usado: Visual Studio 2010, Linguagem C#.NET, Plataforma: Windows Service.

                Vou passar do pressuposto de que o serviço já está pronto e rodando. Lembro que para quem não sabe nada sobre criação de serviço no Windows, é necessário começar do zero. Aqui estou falando da parte final, ou seja, depois que o serviço já está pronto.

                O serviço já foi criado, clique duas vezes em cima do arquivo .cs principal. A página vai abrir da cor cinza escrito no meio. (Imagem 1)

Imagem 1

                Para gerar o instalador, clique com o botão direito em cima da tela cinza e escolha a opção de Add Installer. (Imagem 2)

Imagem 2

                Ao escolher esta opção Add Installer, outro arquivo é gerado com o nome de ProjectInstaller.cs dentro do próprio projeto. (Imagem 3)

Imagem 3

                Note que existem dois componentes de ferramenta no arquivo de instalação. Agora é necessário mexer dentro das propriedades de cada componente. Para isso, basta selecionar um dos dois e clicar F4.

                Foi selecionado primeiro o nome serviceProcessInstaller. (Imagem 4)

Imagem 4

                A única opção que precisa ser alterada é a Account, geralmente escolho o valor LocalService que usa o usuário do serviço local para instalar. Existem várias outras opções que podem ser escolhidas.

Imagem 5

                Como dito antes, o LocalService instala com o usuário do serviço local. A opção NetworkService usa o usuário da administrador de rede. O LocalSystem usa o usuário do sistema e por último a opção User, é pedido o usuário na tela.

                Selecionando agora a segunda opção do componente, o chamado serviceInstaller existem duas opções importantes para analisar. (Imagem 6)

Imagem 6

                As duas partes mais importantes aqui são: DisplayName e StartType. O DisplayName Serve para colocar o nome do serviço que vai aparecer na tela Services do Sistema Operacional Windows 7. Fica mais fácil identificar quando o nome é padronizado. O segundo item é o StartType. Essa propriedade é aquela que vai ficar atribuída. Existem várias opções: Manual, Automático e Inativo. O automático é o que geralmente deixo isso porque se a máquina for reiniciada, o serviço será iniciado automaticamente. Lógico que depois de iniciado a primeira vez.

                Tudo isso é para um melhor funcionamento do serviço, melhor forma de instalação e aparecimento na tela de Serviços. (Imagem 7)

Imagem 7

                Espero que tenha gostado e qualquer dúvida pode entrar em contato.