Jump to content
Fivewin Brasil

Uso correto da funcao IsExeRunning


ZECA

Recommended Posts

Olá a todos!!!

Neste forum achei como usar a funcao ISEXERUNNING.

A função detecta que há outro programa igual sendo executado porém não MAXIMIZA o mesmo. Como devo fazer para que constatado que há outro programa igual em andamento o mesmo seja MAXIMIZADO. Não sei se é porque uso janela MDI.

Vejam como faço:


cFileName := "WINTRC.EXE"

IF ISEXERUNNING( cFileName( HB_ARGV( 0 ) ) )

MSGINFO("O Sistema Já Está Aberto Nesta Máquina, verifique .... !","Atenção")

SHOWWINDOW( FINDWINDOW( 0, "WINTRC" ), 9 )

SETFOREGROUNDWINDOW( FINDWINDOW( 0, "WINTRC" ) )

RETURN NIL

ENDIF

id=code>id=code>

Obrigado

Sds

José Carlos - ZECA

fwh612(Free)-clipper52e-blinker 7.0 - six 3.02 - Windows XP

Link to comment
Share on other sites

Olá a todos!!!

Neste forum achei como usar a funcao ISEXERUNNING.

A função detecta que há outro programa igual sendo executado porém não MAXIMIZA o mesmo. Como devo fazer para que constatado que há outro programa igual em andamento o mesmo seja MAXIMIZADO. Não sei se é porque uso janela MDI.

Vejam como faço:


cFileName := "WINTRC.EXE"

IF ISEXERUNNING( cFileName( HB_ARGV( 0 ) ) )

MSGINFO("O Sistema Já Está Aberto Nesta Máquina, verifique .... !","Atenção")

SHOWWINDOW( FINDWINDOW( 0, "WINTRC" ), 9 )

SETFOREGROUNDWINDOW( FINDWINDOW( 0, "WINTRC" ) )

RETURN NIL

ENDIF

id=code>id=code>

Obrigado

Sds

José Carlos - ZECA

fwh612(Free)-clipper52e-blinker 7.0 - six 3.02 - Windows XP

Link to comment
Share on other sites

  • 2 weeks later...

O KApi responde essa rpa vc..

So basta usar isso no EXE

IF ISEXERUNNING( CFILENAME( HB_ARGV( 0 ) ) )

MSGINFO("O Sistema Já Está Aberto Nesta Máquina, verifique .... !","Atenção")

__Quit()

ENDIF

Geovanni Holior

Analista de Sistema

Clip53 * FHW 9.1/../9.4 MySql

skype:geovanni.holior

" Tudu Posso naquele que me Fortalece!"

Link to comment
Share on other sites


DV_TitSisid=red>:="Titulo da window principal"

IF (IsExERunning( CFILENOEXT( HB_ARGV( 0 ) ) ) )

SHOWWINDOW( FINDWINDOW( 0, DV_TitSisid=red> ), 9 )

SETFOREGROUNDWINDOW( FINDWINDOW( 0, DV_TitSisid=red> ) )

RETURN NIL

ENDIF

id=code>id=code>

Onde: DV_TitSisid=red> é o titulo da window principal, e nao o nome do .EXE

RodapeEmail.JPG

"Não seja um clicador, tone-se um programador." Eu estou tentando.

Link to comment
Share on other sites

Vc esta usando a Opçao 9...

SHOWWINDOW( FINDWINDOW( 0, "WINTRC" ), 9 )...RESTORE

Tem q usar a 3 ...SW_SHOWMAXIMIZED


#define SW_SHOWMAXIMIZED 3

.

.

METHOD sb_IsExe() CLASS TSBApp

if IsExeRunning( cFilenoext( HB_ARGV( 0 ) ) )

ShowWindow( FindWindow( 0, ::cTitle ), SW_SHOWMAXIMIZED )

SetForegroundWindow( FindWindow( 0, ::cTitle ) )

return .f.

endif

return .t.

id=code>id=code>

Qq duvida veja no help do FiveWin a funçao..ShowWindow()..

@braços Ale

aleseribeli@hotmail.com

Andradina/SP

"Hoje tô igual televisão velha; Eh sem Controle!...O q tem Limite eh Município!"id=red>

Link to comment
Share on other sites

citação:


DV_TitSisid=red>:="Titulo da window principal"

IF (IsExERunning( CFILENOEXT( HB_ARGV( 0 ) ) ) )

SHOWWINDOW( FINDWINDOW( 0, DV_TitSisid=red> ), 9 )

SETFOREGROUNDWINDOW( FINDWINDOW( 0, DV_TitSisid=red> ) )

RETURN NIL

ENDIF

id=code>id=code>

Onde: DV_TitSisid=red> é o titulo da window principal, e nao o nome do .EXE

RodapeEmail.JPG

"Não seja um clicador, tone-se um programador." Eu estou tentando.


id=quote>id=quote>

Excelente Sérgio. Muito Bom.

João Santos - São Paulo.

kmt_karinha@pop.com.br

joao@pleno.com.br

Fone: (11) 3106-2832 / 8243-5632

FWH 2.7 - xHARBOUR WorkShop.Exe

dentinho.jpg?rnd=0.830315402649066

Link to comment
Share on other sites

Depois das versões 9.xx

nunca mais consegui maximizar a tela.

Seria legal se algém colocasse todo o processo e não só partes dele.. icon_smile_big.gif

Sergio -->

"Não seja um clicador, tone-seid=size4>id=red> um programador." Eu estou tentando.

Abraços..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com

Link to comment
Share on other sites

citação:

Depois das versões 9.xx

nunca mais consegui maximizar a tela.

Seria legal se algém colocasse todo o processo e não só partes dele.. icon_smile_big.gif

Sergio -->

"Não seja um clicador, tone-seid=size4>id=red> um programador." Eu estou tentando.

Abraços..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com


id=quote>id=quote>

Olha meu Post ai Luiz....Vcs estao usando a opçao RESTORE...ta Errado..tem q usar a Opçao SW_SHOWMAXIMIZED.

Independente se o sistema esta Minimizado ou Maximilizado( escondido atraz de alguma tela), qdo acionar ele de novo...o Sistema ja vem em 1º plano...podem testar.

No inicio do seu sistema, antes de Iniciar a Window..vc faz a verificaçao.


*****--- VERIFICA SE O SISTEMA JA ESTA ABERTO ---*******************************

if !::sb_IsExe()

return nil

endif

.

.

.

DEFINE WINDOW ::oWndMain TITLE ::cTitle

.

id=code>id=code>

@braços Ale

aleseribeli@hotmail.com

Andradina/SP

"Hoje tô igual televisão velha; Eh sem Controle!...O q tem Limite eh Município!"id=red>

Editado por - Ale SB on 22/09/2010 09:55:04

Link to comment
Share on other sites

Não consegui...

a Dica do Sérgio não reabre o programa, apenas fica uma ampuleta uns 5 segundos e some sem maximizar a tela.

Ale->>Tentei sua dica mais nem compila dá erro..


#define SW_SHOWMAXIMIZED 3

Procedure Main()

if !::sb_IsExe()

return nil

endif

Define window

Activate Window...

Return(Nil)

METHOD sb_IsExe() CLASS TSBApp

if IsExeRunning( cFilenoext( HB_ARGV( 0 ) ) )

ShowWindow( FindWindow( 0, ::cTitle ), SW_SHOWMAXIMIZED )

SetForegroundWindow( FindWindow( 0, ::cTitle ) )

return .f.

endif

return .t.

id=code>id=code>

o erro ;

id=code>
id=code>

Obrigado..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com

Link to comment
Share on other sites

citação:

Não consegui...

a Dica do Sérgio não reabre o programa, apenas fica uma ampuleta uns 5 segundos e some sem maximizar a tela.

Ale->>Tentei sua dica mais nem compila dá erro..


#define SW_SHOWMAXIMIZED 3

Procedure Main()

if !::sb_IsExe()

return nil

endif

Define window

Activate Window...

Return(Nil)

METHOD sb_IsExe() CLASS TSBApp

if IsExeRunning( cFilenoext( HB_ARGV( 0 ) ) )

ShowWindow( FindWindow( 0, ::cTitle ), SW_SHOWMAXIMIZED )

SetForegroundWindow( FindWindow( 0, ::cTitle ) )

return .f.

endif

return .t.

id=code>id=code>

o erro ;

id=code>
id=code>

Obrigado..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com


id=quote>id=quote>

Boa tarde!!

Tente Isto:

deixa aquele define que vc colocou


cFileName:="WINTRC" // sem o exe

qEmpresa:= oemtoansi("xxxxxxxxxxxx")// titulo da janela Principal do Programa

IF (IsExERunning( cFileName( HB_ARGV( 0 ) ) ) )

SHOWWINDOW( FINDWINDOW( 0, qEmpresa ), 9 )

SETFOREGROUNDWINDOW( FINDWINDOW( 0, qEmpresa ) )

RETURN NIL

ENDIF

id=code>id=code>

Não testei ainda, mas acho que funciona. Pelo menos foi o que entendi.

Sds

José Carlos - ZECA

fwh612(Free)-clipper52e-blinker 7.0 - six 3.02 - Windows XP

Link to comment
Share on other sites

citação:

citação:

Não consegui...

a Dica do Sérgio não reabre o programa, apenas fica uma ampuleta uns 5 segundos e some sem maximizar a tela.

Ale->>Tentei sua dica mais nem compila dá erro..


#define SW_SHOWMAXIMIZED 3

Procedure Main()

if !::sb_IsExe()

return nil

endif

Define window

Activate Window...

Return(Nil)

METHOD sb_IsExe() CLASS TSBApp

if IsExeRunning( cFilenoext( HB_ARGV( 0 ) ) )

ShowWindow( FindWindow( 0, ::cTitle ), SW_SHOWMAXIMIZED )

SetForegroundWindow( FindWindow( 0, ::cTitle ) )

return .f.

endif

return .t.

id=code>id=code>

o erro ;

id=code>
id=code>

Obrigado..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com


id=quote>id=quote>

Boa tarde!!

Tente Isto:

deixa aquele define que vc colocou


cFileName:="WINTRC" // sem o exe

qEmpresa:= oemtoansi("xxxxxxxxxxxx")// titulo da janela Principal do Programa

IF (IsExERunning( cFileName( HB_ARGV( 0 ) ) ) )

SHOWWINDOW( FINDWINDOW( 0, qEmpresa ), 9 )

SETFOREGROUNDWINDOW( FINDWINDOW( 0, qEmpresa ) )

RETURN NIL

ENDIF

id=code>id=code>

Não testei ainda, mas acho que funciona. Pelo menos foi o que entendi.

Sds

José Carlos - ZECA

fwh612(Free)-clipper52e-blinker 7.0 - six 3.02 - Windows XP


id=quote>id=quote>

Nada

id=code>
id=code>

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com

Link to comment
Share on other sites

Luiz...isso ai faz..parte de minha classe...sao metodos dela..use assim no seu sistema.


#define SW_SHOWMAXIMIZED 3

.

.

function main()

.

.

cTitle := "Meu Titulo"

.

if IsExeRunning( cFilenoext( HB_ARGV( 0 ) ) )

ShowWindow( FindWindow( 0, cTitle ), SW_SHOWMAXIMIZED )

SetForegroundWindow( FindWindow( 0, cTitle ) )

return nil

endif

.

.

.

DEFINE WINDOW...TITLE cTitle

.

Activate Window...

.

.

id=code>id=code>

@braços Ale

aleseribeli@hotmail.com

Andradina/SP

"Hoje tô igual televisão velha; Eh sem Controle!...O q tem Limite eh Município!"id=red>

Editado por - Ale SB on 22/09/2010 15:15:27

Link to comment
Share on other sites

Putz!! pessoal..

descobri que para mim não dá certo porque após carregar o sistema, ele cai em uma tela de abertura onde seleciono uma empresa, depois de seleciona-la mudo o titulo da janela com


ownd:SetText("..::Pessoal9 |&eemp | &MA:&wAno | &fVersao |")

id=code>id=code>

fiz um teste e comentei essa linha ai e passou a funcionar..

Só que não posso deixar sem este novo texto na Window, é por ele que sei qual empresa,mes,ano etc... estou operando.

Obrigado..

Retorne avisando se a dica funcionouid=red>

curruptos.png

Luiz Arruda

Corumbá - MS

ico.corumba@gmail.com

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...