Page 1 of 1
Lista Processi/Programmi in esecuzione
Posted: Fri Jan 27, 2017 6:36 pm
by Romeo
Ciao a tutti,
mi capita che a volte lo stesso utente clicca due volte sullo stesso programma, lanciandolo più volte, creando problemi !
Esiste la possibilità di sapere tutti gli EXE o i programmi in esecuzione ?
Grazie e buon WEND a tutti
Romeo/Zingoni
Re: Lista Processi/Programmi in esecuzione
Posted: Fri Jan 27, 2017 8:50 pm
by Enrico Maria Giordano
Metti questo all'inizio del tuo programma:
Code: Select all
IF ISEXERUNNING( CFILENOEXT( HB_ARGV( 0 ) ) )
SHOWWINDOW( FINDWINDOW( 0, "Il titolo della tua main window" ), 9 )
SETFOREGROUNDWINDOW( FINDWINDOW( 0, "Il titolo della tua main window" ) )
RETURN NIL
ENDIF
Così quando si lancia di nuovo il programma viene attivata l'istanza già in esecuzione.
EMG
Re: Lista Processi/Programmi in esecuzione
Posted: Sun Feb 05, 2017 11:42 am
by Romeo
Ottimo
Grazie 1000
Re: Lista Processi/Programmi in esecuzione
Posted: Wed Feb 15, 2017 4:25 pm
by Romeo
Ops !!
Ho dovuto immediatamente togliere questo controllo
ISEXERUNNING( CFILENOEXT( HB_ARGV( 0 ) ) ) ......
poichè più di un cliente mi ha riferito che non riusciva a a lanciare in programma, in quanto tale funzione risultava già in esecuzione !!
Eppure io ho fatto dei test su Windows XP, Windows 7 e Windows 10 e funzionava bene, mentre dai clienti avevano problemi di Windows Server 2003/2010
A qualcuno è mai successo qualcosa del genere ?
Grazie
Re: Lista Processi/Programmi in esecuzione
Posted: Wed Feb 15, 2017 5:26 pm
by Enrico Maria Giordano
Io uso quel sistema su un programma installato su decine di clienti e non mi risultano problemi.
EMG
Re: Lista Processi/Programmi in esecuzione
Posted: Wed Feb 15, 2017 8:11 pm
by stefano
Ciao,
confermo il controllo funziona bene sia su win7 che win10
installo l'eseguibile sui vari client e su windows server 2003 solo gli archivi
Stefano
Re: Lista Processi/Programmi in esecuzione
Posted: Thu Feb 16, 2017 9:19 am
by Romeo
In effetti ai clienti succede solo se lanciano l'EXE su SERVER
Sarà un problema solo di Windows Server
R
Re: Lista Processi/Programmi in esecuzione
Posted: Thu Feb 16, 2017 3:58 pm
by Romeo
Mai possibile che non esiste una funzione che mi da la lista dei processi caricati su TASK-MANAGER ?
Magari anche con path ?
Non le applicazioni, ma i processi !
Tks
Re: Lista Processi/Programmi in esecuzione
Posted: Fri Feb 17, 2017 12:42 pm
by Silvio.Falconi
io ho un altro problema :
#define NOME_PROGRAMMA_TITLE "STUDIO"
IF ISEXERUNNING( CFILENAME( HB_ARGV( 0 ) ) )
MsgWait(NOME_PROGRAMMA_TITLE+" è già in esecuzione !","Attenzione")
SHOWWINDOW( FINDWINDOW( 0, NOME_PROGRAMMA_TITLE ), 9 )
SETFOREGROUNDWINDOW( FINDWINDOW( 0, NOME_PROGRAMMA_TITLE ) )
RETURN NIL
ENDIF
La finestra prima si chiama ""STUDIO" e lui mi dice che è in esecuzione
poi siccome devo aprire l'anno d'esercizio 2017 diventa
oApp():oWndMain:ctitle ( NOME_PROGRAMMA_TITLE+ ">> Esercizio "+cYearPath)
e quindi cambia il nome della finestra
come posso fare ?
Re: Lista Processi/Programmi in esecuzione
Posted: Fri Feb 17, 2017 12:50 pm
by Enrico Maria Giordano
Questo cerca la finestra che inizia con quel titolo:
Code: Select all
#include "Fivewin.ch"
FUNCTION MAIN()
LOCAL oWnd
LOCAL cTitle := "This is a test"
IF ISEXERUNNING( CFILENAME( HB_ARGV( 0 ) ) )
SHOWWINDOW( FINDWND( cTitle ), 9 )
SETFOREGROUNDWINDOW( FINDWND( cTitle ) )
RETURN NIL
ENDIF
DEFINE WINDOW oWnd;
TITLE "Prefix - " + cTitle + " - Postfix"
ACTIVATE WINDOW oWnd
RETURN NIL
#define GW_HWNDFIRST 0
#define GW_HWNDLAST 1
#define GW_HWNDNEXT 2
#define GW_HWNDPREV 3
#define GW_OWNER 4
#define GW_CHILD 5
FUNCTION FINDWND( cTitle )
LOCAL hWnd := GETWINDOW( GETDESKTOPWINDOW(), GW_CHILD )
WHILE hWnd != 0
IF UPPER( cTitle ) $ UPPER( GETWINDOWTEXT( hWnd ) )
RETURN hWnd
ENDIF
hWnd = GETWINDOW( hWnd, GW_HWNDNEXT )
ENDDO
RETURN NIL
EMG
Re: Lista Processi/Programmi in esecuzione
Posted: Fri Feb 17, 2017 12:59 pm
by Silvio.Falconi
grazie vado a provarlo