Lista Processi/Programmi in esecuzione
Moderator: Enrico Maria Giordano
Lista Processi/Programmi in esecuzione
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
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
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: Lista Processi/Programmi in esecuzione
Metti questo all'inizio del tuo programma:
Così quando si lancia di nuovo il programma viene attivata l'istanza già in esecuzione.
EMG
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
EMG
Re: Lista Processi/Programmi in esecuzione
Ottimo
Grazie 1000
Grazie 1000
Re: Lista Processi/Programmi in esecuzione
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
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
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: Lista Processi/Programmi in esecuzione
Io uso quel sistema su un programma installato su decine di clienti e non mi risultano problemi.
EMG
EMG
Re: Lista Processi/Programmi in esecuzione
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
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
FWH 14.11 + xHarbour + bcc582
Re: Lista Processi/Programmi in esecuzione
In effetti ai clienti succede solo se lanciano l'EXE su SERVER
Sarà un problema solo di Windows Server
R
Sarà un problema solo di Windows Server
R
Re: Lista Processi/Programmi in esecuzione
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
Magari anche con path ?
Non le applicazioni, ma i processi !
Tks
- Silvio.Falconi
- Posts: 4956
- Joined: Thu Oct 18, 2012 7:17 pm
Re: Lista Processi/Programmi in esecuzione
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 ?
#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 ?
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: Lista Processi/Programmi in esecuzione
Questo cerca la finestra che inizia con quel titolo:
EMG
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
- Silvio.Falconi
- Posts: 4956
- Joined: Thu Oct 18, 2012 7:17 pm
Re: Lista Processi/Programmi in esecuzione
grazie vado a provarlo
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC