Delphi: Futó alkalmazás ellenőrzése

Programozással kapcsolatos cikkek / Delphi (2096 katt)

Ha nem szeretnénk, hogy programunkat több példányban futtassák, akkor az alábbi kis rutinnal ellenőrizhetjük, hogy elindult-e már. Ha már fut, akkor az aktuális példányt leállítjuk.

procedure AplicationRunning;
Var Sem : THandle;
Begin
Sem := CreateSemaphore(nil,0,1,'FogegNet');
If ((Sem<>0) And (GetLastError = ERROR_ALREADY_EXISTS)) Then
Begin
CloseHandle(Sem);
ShowMessage('A(z) ... program már fut egy példányban!');
Halt(1);
End;
End;



Az eljárást a program .DPR állományában kell meghívni.

begin
Application.Initialize;

AplicationRunning; // Futó program példány ellenőrzése

Application.CreateForm(TForm1, Form1);

Application.Run;
End.

Előző oldal samuraj