Autor Beitrag
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2263

Win 10
C# (VS 2019)
BeitragVerfasst: So 25.04.04 22:56 
Folgendermaßen ist es möglich, dass von einem WinForms-Programm nur eine Instanz zugelassen wird:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
const
  myGUID = '{6C1C3282-10AB-44F1-966A-14DBD8061917}';

var
  createdNew : Boolean;
  m : Mutex;

begin
  m := Mutex.Create(true, myGUID, createdNew); //Mutex erzeugen

  if not createdNew then exit; //wenn es ihn schon gab, läuft das Programm schon
  Application.Run(TMainForm.Create);

  m.ReleaseMutex; //Mutex freigeben
end.


Dabei muss natürlich für jedes Programm mittels STRG+SHIFT+G eine eigene GUID erzeugt werden!

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".