Vai al contenuto
PLC Forum


Dot Net Vb - Cerca Form


Venus

Messaggi consigliati

Ciao,

durante l'apertura del form principale di un programma da me sviluppato in VB Net, ho la necessità di controllare se il programma è gia in eseguzione, settare come finestra di primo piano la prima istanza gia avviata e terminare l'attuale.

E' chiaro che per gestire la singola istanza basterebbe selezionare la caption "rendi a istanza singola" nelle proprietà dell'applicazione e bloccherebbe in automatico l'avvio della seconda, ma così facendo non potrei controllare e portare in primo piano la prima istanza.

Avete esempi? non so come fare? worthy.gif

Link al commento
Condividi su altri siti


Il modo per impedire di startare più volte un'applicazione è:

    If UBound(Diagnostics.Process.GetProcessesByName _
       (Diagnostics.Process.GetCurrentProcess.ProcessName)) _
       > 0 Then
            Dim msgr As MsgBoxResult = MsgBox("Il programma è già in esecuzione", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly _
                                        , "Info")
      Me.Close()
    End If

Però, per portare in primo piano l'applicazione precedente non saprei....

forse si può fare utilizzando "ShowWindowAsync" passandogli l'handle dell'applicazione su cui vuoi agire.... prova ad indagare in questa direzione.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...