Desenvolvimento - C#

Gerando instalador de serviço

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.

por Mauricio Junior



                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.

Mauricio Junior

Mauricio Junior - Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; . Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna e sou editor do Linha de Código.
Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A.
Blog:
blog.mauriciojunior.org
Site pessoal: www.mauriciojunior.org