Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654

    [JAVA] Impedire l'esecuzione di 2 sessioni della stessa applicazione

    Mi è stato chiesto esplicitamente da un cliente per cui ho realizzato un'applicazione java, di fare in modo che di questa applicazione non possano essere aperte 2 sessioni contemporaneamente (come succede con Outlook). Come posso realizzare questo controllo?
    Maddalena... Perché proprio Iacchetti!...

  2. #2
    nel main utilizzi una variabile statica, la inizializzi la prima volta
    al secondo avvio controlli la variabile: se è settata ci sta già un istanza del programma e devi solo uscire dal programma
    23-08-2005: Udinese in cémpions lìg
    Questa estate l'ho passata a Tallin

  3. #3
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Ma come faccio da un'istanza di un'applicazione a leggere una variabile creata da un'altra istanza della stessa applicazione???
    Maddalena... Perché proprio Iacchetti!...

  4. #4
    Utente bannato
    Registrato dal
    Sep 2001
    Messaggi
    413
    Originariamente inviato da pireda
    Ma come faccio da un'istanza di un'applicazione a leggere una variabile creata da un'altra istanza della stessa applicazione???

    statica ti dice qualcosa?


    cerca su google "pattern singleton".....

  5. #5
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    Ok...le mie conoscenze in materia non sono granché...ora provo poi vi faccio sapere! Grazie!
    Maddalena... Perché proprio Iacchetti!...

  6. #6
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    ...non funziona...probabilmente avete capito male...

    Esempio pratico:
    1. Io ho il file applicazione.java compilato.
    2. Dal prompt di DOS lancio java applicazione e mi si apre la mia applicazione.
    3. Apro un'altra finestra del prompt di DOS e rilancio lo stesso comando, mi si apre un'altra applicazione identica, che non piò leggere le variabili dell'istanza aperta nel punto 1.

    CONCLUSIONE: Se io la stessa cosa la faccio sull'icona di Outlook Express, questo non succede, semplicemente mi torna in primo piano l'istanza che avevo gia lanciato. Questo è quello che vorrei fare io.
    Maddalena... Perché proprio Iacchetti!...

  7. #7
    Utente bannato
    Registrato dal
    Sep 2001
    Messaggi
    413
    Originariamente inviato da pireda
    ...non funziona...probabilmente avete capito male...
    ah, noi eh?

    se tu ti mofdifichi il main dell'applicazione, e gli fai usare una variabile STATICA per settarla... dall'altra istanza vedi lo stesso valore della variabile che vedi in questa istanza, per il semplice motivo che in realtà non esiste nessuna istanza di quella variabil, ma ce n'èuna sola.

    ora, se tu hai già un compilato, o ti fai dare i sorgenti, o te lo decompili, la scelta è tua.. in ogni caso devi aggiungerci il controllo che dicevamo sopra.....


    p.s. non portare come esempio outlook... che mica è fatto in java!

  8. #8
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    public class Apllicazione
    {
    public static int lanciato;

    public static void main(String[] args)
    {
    lanciato += 1;
    System.out.println("Lanciato = " + lanciato);


    ... Resto del codice ...
    }
    }
    Ho sbagliato qualcosa? Guardate l'allegato...
    Il "contatore statico" non è stato incrementato al secondo lancio dell'applicazione!
    Maddalena... Perché proprio Iacchetti!...

  9. #9
    Utente bannato
    Registrato dal
    Sep 2001
    Messaggi
    413
    Originariamente inviato da pireda
    Ho sbagliato qualcosa? Guardate l'allegato...
    Il "contatore statico" non è stato incrementato al secondo lancio dell'applicazione!

    :master:

    uhm...

    aspetta che mi informo...
    non dovrebbe andare così.. cioè è come se avessi più istanze della VM..

  10. #10
    Utente di HTML.it L'avatar di pireda
    Registrato dal
    Jul 2001
    Messaggi
    654
    MA E' OVVIO CHE HO 2 ISTANZE DELLA STESSA VM!!!
    Maddalena... Perché proprio Iacchetti!...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.