Meine Programme erstelle ich in der Regel so, daß sie nicht doppelt gestartet werden können.
Dazu erzeuge ich ein Memory-Mapped File in dem ich gleich noch das
Handle der Application ablege.
Dein Setup-Programm braucht dann nur zu prüfen ob das Memory.Mapped File existiert
und könnte über das
Handle die Anwendung z.b. automatisch schließen oder in den Fordergrund holen usw.