Показать сообщение отдельно
  #1  
Старый 17.01.2011, 11:43
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию "Запрет повторного запуска" vs. AlphaSkins

Долгое время программа работала спокойно, без каких-либо проблем. Если её копия уже была запущена, то она успешно передавала ей управление и "умирала". Переписал программу с использованием АльфаСкинов, и тут начался каламбур - программа точно так же поднимает окно, если оно за чем-то спрятано, но вот в случае, если окно свёрнуто - развернуть его, как было раньше, не получается.
Использую вот такой фрагмент:
Код:
var
  PreviousInstanceWindow : LongWord;
begin
  PreviousInstanceWindow := FindWindow('TfMain',nil);
  if PreviousInstanceWindow <> 0 then begin
    if IsIconic(PreviousInstanceWindow) then
      ShowWindow(PreviousInstanceWindow,SW_RESTORE)
    else
      SetForegroundWindow(PreviousInstanceWindow);
    Halt;
  end;
  Application.Initialize;
  Application.CreateForm(TfMain, fMain);
  Application.Run;
end;
Как исправить положение дел?

P.S. Вариант "не использовать скины" не рассматривается.
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием