Показать сообщение отдельно
  #9  
Старый 15.06.2011, 21:49
Аватар для SpectraL
SpectraL SpectraL вне форума
Начинающий
 
Регистрация: 19.05.2011
Адрес: Санкт-Петербург
Сообщения: 112
Версия Delphi: 10.1 Berlin
Репутация: 10
По умолчанию

При варианте Gravitas'a выполняется (при запуске дублирующей копии программы) процедура FormCreate главного модуля (с формой).
Цитата:
procedure TForm1.FormCreate(Sender: TObject);
begin
showmessage('test');
end;
Это можно исправить изменив вариант Gravitas'а следующим образом:
Цитата:
if FindWindow('TForm1', 'Form1') > 0 then
begin
SetForegroundWindow(FindWindow('TForm1', 'Form1'));
Application.Terminate;
end else
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
Ответить с цитированием