...oder nach Semaphor, siehe dazu dieses Beispiel (Der Part um die Instanz zu checken):
Delphi-Quellcode:
procedure InstanceCheck;
var
Sem: THandle;
begin
Sem := CreateSemaphore(nil, 0, 1, 'Programtitle');
If ((Sem <> 0) and (GetLastError = ERROR_ALREADY_EXISTS)) then
begin
CloseHandle(Sem);
Application.MessageBox('Program wird bereits ausgeführt!', 'Wird ausgeführt', 16);
Application.Terminate;
end;
end;
Gruß
Mazel