Как не допустить запуск второй копии программы. Вариант 3

...
Uses syncobjs;
...
Var

CheckEvent: TEvent;
...
procedure TForm1.FormCreate( Sender: TObject );
begin
CheckEvent:= TEvent.Create( nil, false, true, 'MYPROGRAM_CHECKEXIST' );
If CheckEvent.WaitFor( 10 ) <> wrSignaled then
begin
// Сюда попадаем если одна копия уже запущена. Можно, например, сообщить об этом пользователю.
Self.Close;    // Здесь можно завершить программу или сделать еще что-нибудь.
end;
end;

 
« Предыдущая статья   Следующая статья »