Criando um Serviço Windows com Aplicação Clipper

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Criando um Serviço Windows com Aplicação Clipper

Mensagem por asimoes »

Amigos,

Quero compartilhar com vocês minha experiência em criar um serviço windows com uma aplicação clipper. Onde o usuário não vê, o que está acontecendo, é muito útil para monitorar a utilização da aplicação principal. Finalizar processos da aplicação principal. etc.

Segue abaixo meu exemplo, usado nos servidores de meu cliente domino´s pizza, alguém conhece?

Instruções para criar um serviço com srvany

Criar um serviço:

No diretório do srvany:

instsrv ReslSinc c:\srvany\srvany.exe

RelSinc (é o meu aplicativo servidor de data e hora)

No registro do windows:

Executar o regedit

Localizar a chave RelSinc:

Criar uma chave com o nome Parameters

Criar 3 valores de sequencia abaixo de Parameter:

Application (Caminho onde está a aplicação com o nome do executável)
ex.: d:\sistema\dominos\work\relsinc.exe

AppDirectory (Caminho de execução da aplicação)
ex.: d:\sistema\dominos\work

AppParameters (Parametros do sistema)
ex.: 02:40 09:00


Para ativar o serviço:

Ir para o painel de controle atalho ferramentas administrativas,
serviços.

Localizar o(s) serviço(s) criado(s)

Definir como inicialização automática

Inicializar o serviço.

Espero ter ajudado.

[]´s
:)Pos
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

Asimoes, poderia explicar melhor a finalidade e no seu exemplo dado, para quê servem os:

instsrv
ReslSinc
c:\srvany\srvany.exe

Também explique como finalizar tais processos.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Pablo,

Os programas abaixo são ferramentas do windows

instsrv.exe (serve para criar um serviço windows ) (incluir uma entrada de registro)
srvany.exe (serve para rodar a sua aplicação no windows)

O exemplo que eu mencionei de finalizar algum processo, é você criar uma aplicação que fica monitorando o funcionamento da aplicação principal, caso ela seja encerrada de forma anormal, este programa que está rodando como serviço se encarrega de fecha-la, até derrubando a estação que deu gerou o problema. Caso você tenha que reindexar. Pro exemplo rodar o net session \\computador /delete
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Pode-se colocar o programa USB como um serviço do windows, sacou?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

O grande lance é que o serviço é disparado na inicialização do windows, antes do logon.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mensagem por Pablo César »

asimoes escreveu:Os programas abaixo são ferramentas do windows

instsrv.exe (serve para criar um serviço windows ) (incluir uma entrada de registro)
srvany.exe (serve para rodar a sua aplicação no windows)
Não os conhecia. Sabe que até imaginei que fossem do Windows, mas tentei executá-los e não tive sucesso, talvez isso porque só seja parte do WINDOWS XP e eu estou com WIN98.
Pode-se colocar o programa USB como um serviço do windows
Ahh esse exemplo é muito bom. Só gostaria de saber mais... digamos que coloca-se o USB.EXE do Heveraldo como serviço, este ficaria tipo em background ?. Iria ser visualizado, o aplicativo estaria minimizado ou apareceria no tray ?

Muito legal saber isso e ainda com aplicativos Clipper. Poderia ser colocado um aplicativo que auxiliasse a agenda feita também em Clipper.

Sabia que essa questão de editar o REGISTRO do Windows, podem ser feitas através da funções do WAPI ?

Obrigado pelo compartir conosco esses recursos. Espero que em WIN98 exista algo que permita também fazer isso, pois ainda tenho muitos clientes que só usam WIN98 e em REDE (funcionam belezinha, como foi mencionado em outro tópico).
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

talvez isso porque só seja parte do WINDOWS XP e eu estou com WIN98.
O esquema de serviços só existe nas versões NT do Windows. No Windows 98 o equivalente a isso é o driver de sistema VxD, que não é suportado nas versões NT.
Espero que em WIN98 exista algo que permita também fazer isso
Infelizmente não tem mesmo. Só VxD. E, pelo que eu saiba, montar um driver desses não é moleza.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Maligno,

Não testei no w98, exatamente no windows nt, 2000 e xp funciona bem
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Pablo,

No serviço você tem como informar se ele interage com a área de trabalho, isso significa que o programa usb do everaldo, roda sem ser visto pelo usuário, não ocorrendo o risco da aplicação ser encerrada.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

asimoes escreveu:Não testei no w98, exatamente no windows nt, 2000 e xp funciona bem
Nem adianta querer testar no W98. Não existe o conceito de serviço nesta versão. O equivalente seria, como eu disse, o driver VxD.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Por exemplo, no servidor windows 2000 server ou xp, não há a necessidade de se fazer logon, na inicialização do windows o serviço é carregado automáticamente.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

O usb.exe do everaldo vira um servidor de impressão sem a necessidade de capturar uma impressora para a estação de trabalho.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder