DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Artigo Clube Delphi 81 - Criando serviços do Windows

Artigo da Revista Clube Delphi Edição 81.

Esse artigo faz parte da revista Clube Delphi Edição 81. Clique aqui para ler todos os artigos desta edição

imagem_pdf.jpg

Win32

Criando serviços do Windows

 

A entrada maciça dos sistemas operacionais da Microsoft baseados em tecnologia NT (New Technology), como por exemplo: Windows XP, 2000 e 2003, trouxe para o desenvolvedor Win32 uma vantagem sem igual em relação aos antigos SO’s: os Windows Services ou Serviços do Windows. Com eles é possível desenvolver sistemas automatizados que realizam determinadas tarefas continuamente ou em momentos pré-agendados, com/sem a interação do usuário.

Um exemplo disso é o próprio Windows, que aproveita a sua própria tecnologia para efetuar diversas tarefas, tais como: Instalação de Programas, Horário do Windows, Atualizações Automáticas, entre outras. Todas elas encontradas em Painel de Controle>Ferramentas de Sistema>Serviços.

Neste artigo vamos elaborar um pequeno sistema, capaz de efetuar automaticamente a cópia de um banco de dados IB/FB todos os dias, em um horário pré-agendado.

 

Porque usar Serviços?

Se olharmos um pouco para o passado, mais especificamente para os antigos sistemas operacionais, veremos que era bastante complicado desenvolver tarefas automatizadas que rodassem em tempo real e que funcionassem mesmo que o usuário não logasse na rede. Essa, certamente, é uma das principais vantagens dos serviços.

Podemos determinar que o servidor faça uma checagem de rotina no banco de dados a cada n horas sem intervenção do usuário. Se dispuséssemos apenas de Windows 95 ou 98, teríamos que desenvolver um aplicativo que executado continuamente, faria nossa checagem, mas para isso o usuário deveria logar na rede para que o software fosse disparado e aberto, talvez com uma entrada no registro do Windows ou uma ação de arquivo de lote (BAT). Isso, com certeza, tornaria o aplicativo dependente do usuário.

Porém, se desenvolvermos um Service, o mesmo é adicionado na lista de tarefas do Windows e executado assim que a máquina é ligada, e mesmo que o servidor esteja em modo de standby, o serviço continua funcionando.

 

Entendendo o projeto

Para entendermos melhor, vamos desenvolver uma aplicação básica que fará uma cópia simples do banco para uma nova pasta. O exemplo terá um arquivo de inicialização (INI) com a Hora, Origem e Destino da cópia (você pode adaptar para verificar juntamente os minutos). Uma thread interna “rodará” continuamente, interceptará o horário e efetuará a cópia, do arquivo GDB.

Existem n aplicabilidades para os serviços, mas para ser mais objetivo o exemplo cabe bem. Então, mão na massa.

 

Iniciando o projeto

Para iniciar uma nova aplicação, clique em File>New>Other e selecione a opção Service Application (Figura 1).

 

"

A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Adriano Santos
É especialista Delphi, ex-editor das revistas ClubeDelphi e WebMobile, atualmente é Product Manager na SPK Tecnologia - empresa distribuidora de diversas soluções tecnológicas – e especialista em Microsoft Team Foundation Server.
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03