Как определить работает ли уже данное приложение или это первая его копия?

Каждый экземпляр программы имеет ссылку на свою предыдущую копию - hPrevInst: hWnd. Ее можно проверить перед созданием приложения и при необходимости отреагировать соответствующим образом.

Если запущена только одна копия, то эта ссылка равна нулю.

Пример:

procedure TForm1.FormCreate(Sender: TObject); 
 begin 
 
{Проверяем есть ли указатель на предыдущую копию приложения}
 IF hPrevInst <> 0 THEN BEGIN 
 
{Если есть, то выдаем сообщение и выходим}
 MessageDlg('Программа уже запущена!', mtError, [mbOk], 0); 
 Halt; 
 
END; 
 {Иначе - ничего не делаем (не мешаем созданию формы)}
 
end;

Последние комментарии

  • http://new-rutor.org
  • Производство матрацев. Реализация текстильной продукции https://goo.gl/5WYADp - подушка детская купить оптом - любые объемы, - матрасы высочайшего качества, - самые выгодные цены https://goo.gl/5WYADp - матрацы оптом
  • Норвежский Ламинин от д-ра Эскеланда http://1541.ru в 4 раза Дешевле, чем американский Laminine LPGN. Skype evg7773 Viber +380976131437 Buy The Norwegian LAMININE are 4 times more affordable http://www.getyourboomback.com/#_l_2ps as Laminine by LPGN. Реклама в Интернете. Поисковая оптимизация....

Счетчики