Programm Instanz aktivieren [Gelöst]

Für allgemeine Fragen zur Programmierung mit PureBasic.
MenschMarkus
Beiträge: 220
Registriert: 30.04.2009 21:21
Computerausstattung: i5-2300 (2.8 Ghz) Win10 -64bit / PB 5.73 LTS

Programm Instanz aktivieren [Gelöst]

Beitrag von MenschMarkus »

Hallo,

im diesem Beitrag gibt es eine sehr schöne Beschreibung wie man verhindert, dass ein Programm mehrfach gestartet wird.
Für den Fall, dass das Programm schon einmal gestartet wurde, wie kann ich denn das bereits laufende Programm in den Vordergrund holen, statt nur z.B. eine Meldung ausgeben, dass das Programm schon einmal gestartet wurde?
Hat da jemand eine Idee?

Vielen Dank für Rückmeldungen.
Zuletzt geändert von MenschMarkus am 07.11.2018 16:53, insgesamt 1-mal geändert.
Wissen schadet nur dem, der es nicht hat !
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Programm Instanz aktivieren

Beitrag von RSBasic »

Code: Alles auswählen

SetForegroundWindow_(FindWindow_(0, "DeinFenstertitel"))
Oder vorher mit EnumWindow_() das Fenster deines bereits gestartenes Programms ermitteln und dann die Handle-Nummer an SetForegroundWindow_() übergeben, um das Fenster deines bereits gestartenes Programms in den Vordergrund zu setzen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
MenschMarkus
Beiträge: 220
Registriert: 30.04.2009 21:21
Computerausstattung: i5-2300 (2.8 Ghz) Win10 -64bit / PB 5.73 LTS

Re: Programm Instanz aktivieren

Beitrag von MenschMarkus »

Sehr schön, vielen Dank RSBasic

ich habe es dann gleich noch einmal ergänzd für den Fall dass das Fenster minimiert war:

Code: Alles auswählen

     SetForegroundWindow_(FindWindow_(0,"WINDOWTITLE"))
     ShowWindow_(FindWindow_(0,"WINDOWTITLE"),#SW_RESTORE)
Geht möglicherweise auch schöner, aber es funktioniert.

Danke nochmals
Wissen schadet nur dem, der es nicht hat !
Antworten