Thiagodb Posted May 17, 2005 Report Share Posted May 17, 2005 Por favor, alguem sabe como fazer para o executavel só abrir só uma vez ( como era no 16 bits )... estou usando a vs. FWH 2.6 e xHarbour 0.99.3 . Quote Link to comment Share on other sites More sharing options...
marcelo Posted May 17, 2005 Report Share Posted May 17, 2005 Ola Verifique http://www.fivewin.com.br/forum/topic.asp?TOPIC_ID=3589 Yrece Quote Link to comment Share on other sites More sharing options...
Tiago1361303595 Posted May 17, 2005 Report Share Posted May 17, 2005 Eu utilizo o seguinte em meu programa: If IsExeRunning("MeuPrograma.exe") MsgStop("Este programa já está aberto neste "+; "computador!","ImpossÃvel Continuar!!!") Return(.F.) endif Funciona direitinho... Um Abraço Tiago Ribeiro Quote Link to comment Share on other sites More sharing options...
Thiagodb Posted May 17, 2005 Author Report Share Posted May 17, 2005 Valeu velho!!! brigadaum!!! Quote Link to comment Share on other sites More sharing options...
vagner Posted May 17, 2005 Report Share Posted May 17, 2005 Olá Tiagodb, Seja muito bem vindo ao fórum Vagner Wirts Clipper 5.2 Lib 5.3 - Blinker 5.0 FW 2.0, Harbour 43.0 (Flex), xHarbour 99.1 99.2 99.3 (Simplex) FW 2.5 Quote Link to comment Share on other sites More sharing options...
aldreks Posted May 18, 2005 Report Share Posted May 18, 2005 Caro Tiago, tentei usar este seu código, ele passou bem na compilação, mas na Linkedição com o BLinker7 ele deu pau: BLINKER 1115 : ISEXERUNNI : Unresolved External Eis meu código: If IsExeRunning("Winpoint.exe") MsgStop("Este programa já está aberto neste computador!","ImpossÃvel Continuar!!!") Return(.F.) endif O q há de errado? A sintaxe? ******* citação:Eu utilizo o seguinte em meu programa: If IsExeRunning("MeuPrograma.exe") MsgStop("Este programa já está aberto neste "+; "computador!","ImpossÃvel Continuar!!!") Return(.F.) endif Funciona direitinho... Um Abraço Tiago Ribeiro id=quote>id=quote>------------------------- qadoshy@hotmail.com (Recife-PE) Clipper 5.3b/BLinker7/FW "Sábio é aquele que ensina para saber mais. (Desconhecido)" Quote Link to comment Share on other sites More sharing options...
elitenet Posted May 18, 2005 Report Share Posted May 18, 2005 A Funcao IsExeRunning deve ser de uma versao mais nova do Five do que a que voce esta usando. Marcelo Gomes elitenet@terra.com.br FW 2.3C/CLIPPER 5.2E/BLINKER 7.0 Quote Link to comment Share on other sites More sharing options...
marcelo Posted May 18, 2005 Report Share Posted May 18, 2005 Ola Como não deve ter pesquisado o caminho mostrado, transcrevo o que Marcelo Gomes (elitenet)me nandou e funcionou beleza oPrincipal := FindWindow( 0, "Focus Gestão Empresarial" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf Onde Focus Gestao Empresarial e o nome da Janela Principal de meu sistema. Yrece Quote Link to comment Share on other sites More sharing options...
aldreks Posted May 18, 2005 Report Share Posted May 18, 2005 Marcelo, onde, em q parte vc insere este código no seu sistema? Pois ainda ontem eu tentei usá-lo mas deu pau. Por isso tentei usar o código do nossa amigo. Mas tbm não deu. ************ citação:Ola Como não deve ter pesquisado o caminho mostrado, transcrevo o que Marcelo Gomes (elitenet)me nandou e funcionou beleza oPrincipal := FindWindow( 0, "Focus Gestão Empresarial" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf Onde Focus Gestao Empresarial e o nome da Janela Principal de meu sistema. Yrece id=quote>id=quote>------------------------- qadoshy@hotmail.com (Recife-PE) Clipper 5.3b/BLinker7/FW "Sábio é aquele que ensina para saber mais. (Desconhecido)" Quote Link to comment Share on other sites More sharing options...
aldreks Posted May 18, 2005 Report Share Posted May 18, 2005 Minha versão é igual a sua. **** citação:A Funcao IsExeRunning deve ser de uma versao mais nova do Five do que a que voce esta usando. Marcelo Gomes elitenet@terra.com.br FW 2.3C/CLIPPER 5.2E/BLINKER 7.0 id=quote>id=quote>------------------------- qadoshy@hotmail.com (Recife-PE) Clipper 5.3b/BLinker7/FW "Sábio é aquele que ensina para saber mais. (Desconhecido)" Quote Link to comment Share on other sites More sharing options...
elitenet Posted May 18, 2005 Report Share Posted May 18, 2005 Aldreks Voce deve colocar no inicio do programa principal, antes de criar a janela principal. oPrincipal := FindWindow( 0, "Focus" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste Computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf Obs: O Nome FOCUS entre aspas e o Titulo da janela principal de seu programa. Marcelo Gomes elitenet@terra.com.br FW 2.3C/CLIPPER 5.2E/BLINKER 7.0 Quote Link to comment Share on other sites More sharing options...
aldreks Posted May 19, 2005 Report Share Posted May 19, 2005 Marcelo, há algo estranho. Se eu ponho antes do DEFINE WINDOW, ele passa sem criticar a já existência de um EXE carregado na máquina. Se ponto depois do DEFINE WINDOW, ele critica q já há um EXE aberto na máquina. Porém, está errado pois era o EXE q eu tava carregando pela primeira vez. Ele criticou a si mesmo. E a� **** citação:Aldreks Voce deve colocar no inicio do programa principal, antes de criar a janela principal. oPrincipal := FindWindow( 0, "Focus" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste Computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf Obs: O Nome FOCUS entre aspas e o Titulo da janela principal de seu programa. Marcelo Gomes elitenet@terra.com.br FW 2.3C/CLIPPER 5.2E/BLINKER 7.0 id=quote>id=quote>------------------------- qadoshy@hotmail.com (Recife-PE) Clipper 5.3b/BLinker7/FW "Sábio é aquele que ensina para saber mais. (Desconhecido)" Quote Link to comment Share on other sites More sharing options...
elitenet Posted May 19, 2005 Report Share Posted May 19, 2005 Aldreaks Poste aqui a parte do inicio da janela principal so para eu poder dar uma olhada e ver o que pode estar errado. Marcelo Gomes elitenet@terra.com.br FW 2.3C/CLIPPER 5.2E/BLINKER 7.0 Quote Link to comment Share on other sites More sharing options...
personal Posted May 19, 2005 Report Share Posted May 19, 2005 Seguinte meninos. (Gostaram dos meninos) Set Multiple ON/OFF = FW / clipper IsExeRunning("nome_do_executavel.exe") = FWH/[x]Harbour oPrincipal:=FindWindow( 0, "Focus Gestão Empresarial" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf Detalhe, o titulo da sua window, deverá ser exatamente igual Quote Link to comment Share on other sites More sharing options...
pauloaraujo Posted May 19, 2005 Report Share Posted May 19, 2005 Amigos, Não entendi uma coisa em toda esta história. No meu caso eu não fiz absolutamente nada e não se conseque entrar duas vezes no sistema nem a pau. Se estava minimizado, quando se clica no Ãcone outra vez ele apenas maximiza. Isso é uma propriedade do FW/Clipper?? No xHarbour é diferente?? Também tenho que criar alguma coisa para checar se o usuário entrou duas vezes no sistema?? Ass. Paulo/CONTATO SISTEMAS Clipper 53b / FW26 / Blinker70 Quote Link to comment Share on other sites More sharing options...
vagner Posted May 19, 2005 Report Share Posted May 19, 2005 Olá Paulo, Realmente no Clipper, ele chama o mesmo programa, ou seja maximiza, já no xHarbour, ele abre o programa mais de uma vez Vagner Wirts Clipper 5.2 Lib 5.3 - Blinker 5.0 FW 2.0, Harbour 43.0 (Flex), xHarbour 99.1 99.2 99.3 (Simplex) FW 2.5 Quote Link to comment Share on other sites More sharing options...
aldreks Posted May 19, 2005 Report Share Posted May 19, 2005 Grande Personal, grato por me tratar por menino.... Já faz anos q não ouço alguém me chamar assim... Humm... Até rejuveneceu! É o Seguinte: Esse seu "IsExeRunning" o FW 2.3c reclama na linkedição pelo BLinker 7.0 q é algo externo (já falei ontem). O outro código passa (já falei tbm), mas não faz o q deveria. Eis parte do código: Exemplo 1 = FUNCTION MAIN() *************** Public oJanWPoint //===checa duplicidade de aplicacao oPrincipal := FindWindow( 0, "WINPOINT 1.0 - Sistema de Gestão de Ponto" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste Computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf DEFINE BRUSH oBrush STYLE BORLAND DEFINE FONT oFontWPoint NAME "Arial" SIZE 0,18 DEFINE ICON oICO FILE "Imagens\DECK.ICO" DEFINE WINDOW oJanWPoint ; ICON oIco ; TITLE "WINPOINT 1.0 - Sistema de Gestão de Ponto" ; BRUSH oBrush ; MENU FMenu() SET FONT OF oJanWPoint TO oFontWPoint ==> Neste ele passa sem criticar. Apenas maximiza o EXE já aberto, e q está minimizado. ** Exemplo 2 = FUNCTION MAIN() *************** Public oJanWPoint DEFINE BRUSH oBrush STYLE BORLAND DEFINE FONT oFontWPoint NAME "Arial" SIZE 0,18 DEFINE ICON oICO FILE "Imagens\DECK.ICO" DEFINE WINDOW oJanWPoint ; ICON oIco ; TITLE "WINPOINT 1.0 - Sistema de Gestão de Ponto" ; BRUSH oBrush ; MENU FMenu() SET FONT OF oJanWPoint TO oFontWPoint //===checa duplicidade de aplicacao oPrincipal := FindWindow( 0, "WINPOINT 1.0 - Sistema de Gestão de Ponto" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste Computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf ==> Neste ele critica ele próprio. E fecha aplicação. E agora, "José"? ***** citação:Seguinte meninos. (Gostaram dos meninos) Set Multiple ON/OFF = FW / clipper IsExeRunning("nome_do_executavel.exe") = FWH/[x]Harbour oPrincipal:=FindWindow( 0, "Focus Gestão Empresarial" ) If oPrincipal # 0 MsgStop( "O Sistema já encontra se em uso neste computador!", "Atenção" ) BringWindowToTop( oPrincipal ) Quit EndIf Detalhe, o titulo da sua window, deverá ser exatamente igual id=quote>id=quote>------------------------- qadoshy@hotmail.com (Recife-PE) Clipper 5.3b/BLinker7/FW "Sábio é aquele que ensina para saber mais. (Desconhecido)" Quote Link to comment Share on other sites More sharing options...
pauloaraujo Posted May 19, 2005 Report Share Posted May 19, 2005 Aldreks, Pelo que sei voce usa FW/Clipper. Se for verdade, dá uma olhadinha no que o Vagner escreveu sobre FW/Clipper e xHarbour Ass. Paulo/CONTATO SISTEMAS Clipper 53b / FW26 / Blinker70 Quote Link to comment Share on other sites More sharing options...
Thiagodb Posted May 19, 2005 Author Report Share Posted May 19, 2005 Galera... sou novato no Forum, mas já vi q é muito útil: Depois de alguns teste, consegui fazer assim: meu sistema abre 1º um DIALOG, depois o Menu do Sistema: If FindWindow(, "Login" ) > 0 FreeResources() ErrorLevel(1) Quit EndIf oPrincipal:=FindWindow(,"Sistema de Administração Médica" ) If oPrincipal > 0 MsgStop("Já existe uma aplicação aberta!","Atenção") ShowWindow( oPrincipal , 3 ) FreeResources() ErrorLevel(1) Quit EndIf EndIf Obs.: Na abertura do Dialog de Login, no comando ON INIT eu tive de colocar > SetWndApp(oDlg:hWnd ) Obrigado Galera.... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.