Impedir que o sistema abra várias vezes

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
Augusto
Usuário Nível 3
Usuário Nível 3
Mensagens: 473
Registrado em: 26 Ago 2003 17:50
Localização: Maricá/RJ
Contato:

Re: Impedir varias vezes

Mensagem por Augusto »

Josmar dos Santos escreveu:(...) Atualmente eu uso o rtlink. Da para linkar com ele ???
Parceiro...
Dá uma olhada no meu post nesse tópico...
Tópico relacionado
:xau Fui...
goulart@provsul.com.br

Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
Josmar dos Santos
Usuário Nível 3
Usuário Nível 3
Mensagens: 277
Registrado em: 11 Jan 2006 18:36
Localização: Botucatu-SP

abir o sistema varias vezes

Mensagem por Josmar dos Santos »

Ola pessoal.
Eu usei praticamente todos os exemplos citados. Gostei de todos...
Em especial, a pergunta vai para o Marcelo e o Eolo !
Eu compilei ambos os exemplos que voces citaram. Não gerou erro nos dois, mas ambos nao executam o programa, será que faltando algum detalhe..?? sem mais grato

Josmar
Grings
Usuário Nível 3
Usuário Nível 3
Mensagens: 340
Registrado em: 18 Ago 2004 13:51

Mensagem por Grings »

Josmar, se vc não estiver trabalhando em rede, agora funcionará. Testei no XP;

Código: Selecionar todos

If !File('Status.Cfg')
   Fcreate('Status.Cfg')
Else
   Fopen('Status.Cfg',2+16)
   If Ferror() > 0
      Alert('O programa já está  aberto em outra janela...')
      Quit
   EndIf
EndIf
Editado pela última vez por Pablo César em 23 Mar 2013 04:58, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Josmar dos Santos
Usuário Nível 3
Usuário Nível 3
Mensagens: 277
Registrado em: 11 Jan 2006 18:36
Localização: Botucatu-SP

impedir sistema

Mensagem por Josmar dos Santos »

Ola grings, eu testei a sua rotina e de fato funciomou. Mas não tem como fazer rodar em rede ? Porque eu uso 5 terminais ligados ao um servidor de rede Linux (samba)...sem mais grato
Josmar
Avatar do usuário
Daniel
Usuário Nível 3
Usuário Nível 3
Mensagens: 373
Registrado em: 13 Ago 2003 22:42
Localização: Apucarana - PR

Mensagem por Daniel »

Josmar

o terminais tem hd, se tiver ! crie o arquivo na unidade c: de cada terminal

igual ao exemplo que eu postei, ai ele funcionara em rede

Código: Selecionar todos

If ! TravaJan() 
   Cls 
   Quit 
EndIf 

******************************** 
Function TravaJan() 

   if ! file("C:\CONTROLE.SYS") 
      errhandle:= fcreate("C:\CONTROLE.SYS", 1) 
      fwrite(errhandle,"[ Arquivo de Controle do Sistema ]") 
      FClose(errhandle) 
      errhandle:= fopen("C:\CONTROLE.SYS",2+16) 
      if ferror() > 0 
         Cls 
         Alert("O Sistema ja esta sendo executado! Olhe na barra de tarefa...") 
         Return(.f.) 
      endif 
   else 
      errhandle:= fopen("C:\CONTROLE.SYS",2+16) 
      if ferror() > 0 
         Cls 
         Alert("O Sistema ja esta sendo executado! Olhe na barra de tarefa...") 
         Return(.f.) 
      endif 
   EndIf 
   Return(.t.) 
Daniel

Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Grings
Usuário Nível 3
Usuário Nível 3
Mensagens: 340
Registrado em: 18 Ago 2004 13:51

Mensagem por Grings »

Daniel, mais uma vez, não funciona!
Avatar do usuário
Daniel
Usuário Nível 3
Usuário Nível 3
Mensagens: 373
Registrado em: 13 Ago 2003 22:42
Localização: Apucarana - PR

Mensagem por Daniel »

qual e o seu sistema? e Xp
tem com vc por a parte q vc chama a função e a função.
Pois aqui funciona no Xp, 2000 e 98 em rede.
Daniel

Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Everton
Usuário Nível 3
Usuário Nível 3
Mensagens: 143
Registrado em: 07 Jul 2004 08:53
Localização: Campo Grande - MS

Mensagem por Everton »

Olá galera.


Teste os exemplos do Grings, e funcionou legal se tudo ocorre certo na máquina, pois quando se fecha a janela com o programa aberto ele não abre mais o sistema, pois ele acha que está aberto, fiz isso pois pode acontecer da máquina se desligar ou até mesmo o cliente fecha a janela, alguém teria uma ideia, testei usando o win98se, grato pela atenção
Everton Luiz Penteado
Clipper 5.2b - Blink 7.0
Josmar dos Santos
Usuário Nível 3
Usuário Nível 3
Mensagens: 277
Registrado em: 11 Jan 2006 18:36
Localização: Botucatu-SP

impedir

Mensagem por Josmar dos Santos »

Ola Everton....gostaria de saber se vc testou o exemplo do grings na rede, pois em unico terminal, de fato funcionou, pois o mesmo funcionou também comigo..
josmar
Everton
Usuário Nível 3
Usuário Nível 3
Mensagens: 143
Registrado em: 07 Jul 2004 08:53
Localização: Campo Grande - MS

Mensagem por Everton »

Olá Josmar.


Testei sim em rede com win98SE e win XP, e funciona blz, o problema é quando fecha a janela sem sair do sistema, ai ele dá pau, tendo que reiniciar a máquina pra poder destravar o arquivo, fora isso parece funcionar blz.. estes teste foram feitos com um EXE só rodando nas duas máquinas e criando o arquivo no c:\status.cfg
Everton Luiz Penteado
Clipper 5.2b - Blink 7.0
Josmar dos Santos
Usuário Nível 3
Usuário Nível 3
Mensagens: 277
Registrado em: 11 Jan 2006 18:36
Localização: Botucatu-SP

sistema abrir várias

Mensagem por Josmar dos Santos »

Ola galera, por mim, acho que ja da para encerrar esse tópico. Tem um monte de informações legais aqui. Agradeço a todos os colegas que me ajudaram nesse tópico....Garanto a vocês que vou usar todos esses exemplos para os meus sistemas....sem mais ..muito obrigado a todos...
Grato
Josmar
Josmar dos Santos
Usuário Nível 3
Usuário Nível 3
Mensagens: 277
Registrado em: 11 Jan 2006 18:36
Localização: Botucatu-SP

impedir

Mensagem por Josmar dos Santos »

Ola Daniel
Eu nao queria mais tocar nesse assunto, mais fiquei curioso...
Testei a sua função, mas não entendi....o rtlink compila legal, não gera erros..tudo ok...mas pelo menos não rede(isso quer dizer que eu ainda não testei em rede), ele não executa o exe, ou seja, ja na primeira tentativa, ele ja emite a mensagem de aquivo aberto. O ideial seria na segunda !
sem mais

grato josmar
Avatar do usuário
Daniel
Usuário Nível 3
Usuário Nível 3
Mensagens: 373
Registrado em: 13 Ago 2003 22:42
Localização: Apucarana - PR

Mensagem por Daniel »

Josmar

em rede vc tem q criar e abrir o arquivo no hd local "C:\" e não no servidor.
se a extação nao tiver hd nao funciona.
Daniel

Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Responder