Seite 1 von 1

Programm Instanz aktivieren [Gelöst]

Verfasst: 07.11.2018 16:00
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.

Re: Programm Instanz aktivieren

Verfasst: 07.11.2018 16:06
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.

Re: Programm Instanz aktivieren

Verfasst: 07.11.2018 16:53
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