Lista Processi/Programmi in esecuzione

Moderator: Enrico Maria Giordano

Post Reply
Romeo
Posts: 328
Joined: Thu Jan 25, 2007 3:53 pm
Location: Milan (Italy)

Lista Processi/Programmi in esecuzione

Post 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
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Lista Processi/Programmi in esecuzione

Post 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
Romeo
Posts: 328
Joined: Thu Jan 25, 2007 3:53 pm
Location: Milan (Italy)

Re: Lista Processi/Programmi in esecuzione

Post by Romeo »

Ottimo

Grazie 1000
Romeo
Posts: 328
Joined: Thu Jan 25, 2007 3:53 pm
Location: Milan (Italy)

Re: Lista Processi/Programmi in esecuzione

Post 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
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Lista Processi/Programmi in esecuzione

Post by Enrico Maria Giordano »

Io uso quel sistema su un programma installato su decine di clienti e non mi risultano problemi.

EMG
stefano
Posts: 80
Joined: Tue Mar 25, 2008 9:03 pm
Location: ITALIA

Re: Lista Processi/Programmi in esecuzione

Post 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
FWH 14.11 + xHarbour + bcc582
Romeo
Posts: 328
Joined: Thu Jan 25, 2007 3:53 pm
Location: Milan (Italy)

Re: Lista Processi/Programmi in esecuzione

Post by Romeo »

In effetti ai clienti succede solo se lanciano l'EXE su SERVER

Sarà un problema solo di Windows Server

R
Romeo
Posts: 328
Joined: Thu Jan 25, 2007 3:53 pm
Location: Milan (Italy)

Re: Lista Processi/Programmi in esecuzione

Post 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
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Lista Processi/Programmi in esecuzione

Post 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 ?
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Lista Processi/Programmi in esecuzione

Post 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
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: Lista Processi/Programmi in esecuzione

Post by Silvio.Falconi »

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
Post Reply