Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [VB.NET] Rilevare se l'applicazione è già in esecuzione

    Ciao a tutti, dovrei impedire all'utente finale di eseguire per sbaglio 2 volte l'applicazione, quindi dovrei rilevare all'avvio se esiste già in esecuzione un'altra istanza del mio programma.
    Ho provato con Process ma non ho ottenuto nulla...
    codice:
        Private Sub verifica_avvio()
            Dim i As Process
            For Each i In Process.GetProcesses
                If i.ProcessName = Application.ProductName Then
                    MsgBox("È già in esecuzione un'altra copia dell'agenda!", MsgBoxStyle.Critical)
                    End
                End If
            Next
        End Sub
    Come posso fare??
    http://www.firesoftweb.it - Servizi gratuiti per il tuo sito web: forum, guestbook, contatori visite...

  2. #2
    codice:
    If Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Length>0 Then MsgBox("È già in esecuzione un'altra copia dell'agenda!", MsgBoxStyle.Critical)
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Un attimo... cosi funziona pero mi rileva il processo stesso, quindi anche quando lo apro per la prima volta... :master:
    http://www.firesoftweb.it - Servizi gratuiti per il tuo sito web: forum, guestbook, contatori visite...

  4. #4
    Giusto...
    codice:
    If Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName).Length>1 Then MsgBox("È già in esecuzione un'altra copia dell'agenda!", MsgBoxStyle.Critical)
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Grazie, ora è a posto.
    Scusa, ma perche si usa Length?? Ti restituisce quante volte viene trovato il processo??
    http://www.firesoftweb.it - Servizi gratuiti per il tuo sito web: forum, guestbook, contatori visite...

  6. #6
    Process.GetProcessesByName restituisce un array di processi corrispondenti al nome passato come parametro; come per qualunque array, la proprietà Length restituisce il numero di elementi presenti nell'array.
    Amaro C++, il gusto pieno dell'undefined behavior.

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.