olá pessoal,
Gostaria de saber se ao entrar no sistema tem como verificar se um determinado aplicativo está sendo executado,
seria assim se ao acessar o sistema o AcbrMonitor não estiver sendo executado dar uma mensagem.
xHarbour, windows 7.
Verificar se outro aplicativo esta aberto
Moderador: Moderadores
Verificar se outro aplicativo esta aberto
Da uma olhada aki e ve se te ajuda.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Verificar se outro aplicativo esta aberto
Amiguinhos,
Se o intuito é verificar se o monitor está fechado e então abri-lo voce pode enviar o comando ECF.Ativar para o mesmo e puxar o retorno. Se o monitor estiver ativo ele retornará OK:.
Lógico que você deve apagar os arquivos SAI.TXT e ENT.TXT, enviar o comando e verificar se estes arquivos foram criados. Caso não, o monitor não está ativo e então você poderá executá-lo.
Exemplo de implementação:
Exemplo fictício de uso:
Se o intuito é verificar se o monitor está fechado e então abri-lo voce pode enviar o comando ECF.Ativar para o mesmo e puxar o retorno. Se o monitor estiver ativo ele retornará OK:.
Lógico que você deve apagar os arquivos SAI.TXT e ENT.TXT, enviar o comando e verificar se estes arquivos foram criados. Caso não, o monitor não está ativo e então você poderá executá-lo.
Exemplo de implementação:
Código: Selecionar todos
if ! ACBR_NFE_Ativo()
if ! MsgYesNo( "Confirma a execucao do Monitor?" )
return .f.
endif
WinExec( "ACBrNFeMonitor.exe" )
endif
Código: Selecionar todos
function ACBR_NFE_Ativo(_caminho_)
cECFLOG := ""
cCmd := ""
ACBR_NFE_Comando( "NFE.Ativo", ["]+cCmd+["] )
MyWait(10)
_vezes_ := 30
cPathMonitorNFE:= VerifyINI( "PATHS", "PathMonitorNFE", "..\", cPath+"\NF-e\ACBrNFeMonitor.ini", .f.)
cPathNFE := VerifyINI( "PATHS", "PathNFE" , "..\", cPath+"\NF-e\ACBrNFeMonitor.ini", .f.)
cDirDoMonitor := cPathMonitorNFE
do while _vezes_ > 0
// Verifica se o arquivo Status.txt existe.
// Este arquivo que contém o estado de execução do comando
// enviado.
if file( cDirDoMonitor+"\SAINFE.TXT" )
cECFLOG := memoread( cDirDoMonitor+"\SAINFE.TXT" )
//CopyFile( cDirDoMonitor+"\SAINFE.TXT", cDirDoMonitor+"\SAINFE.INI" )
exit
endif
MyWait(5)
_vezes_--
enddo
retorno := ACBR_NFE_Retorno()
return iif( substr( cECFLOG ,1 ,2 )="OK", .t., .f. )
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.

