Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.15;
Скачать: CL | DM;

Вниз

Активация предыдущей копии приложения   Найти похожие ветки 

 
Степан   (2007-03-24 21:47) [0]

Запретил одновременный запуск 2х и более копий моего приложения, но хочу, чтоб при запуске копии, активизировалось окно главной формы исходного экземпляра приложения. Поиск окна, открытие и активацию осуществляю так:

procedure ActivatePreviousInstance;
var
 PrevInstWnd: HWND;
begin
 PrevInstWnd := FindWindow("TMainForm", nil);
 if PrevInstWnd <> 0 then begin
   ShowWindow(PrevInstWnd, SW_SHOWNORMAL);
   ShowWindow(PrevInstWnd, SW_RESTORE);
   SetWindowPos(PrevInstWnd, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or
     SWP_SHOWWINDOW);
   // SetForegroundWindow(PrevInstWnd);
 end;
end;


Класс главного окна: TMainForm. Дескриптор определяется правильно и окно отображается на экране, если свернуто... но поверх всех показываться не хочет (что SetWindowPos"ом, что SetForegroundWindow"ом). Кто-нибудь сталкивался с этим? что посоветуете?


 
S@shka ©   (2007-03-24 22:26) [1]

FormStyle := fsStayOnTop;


 
Leonid Troyanovsky ©   (2007-03-24 22:43) [2]


> Степан   (24.03.07 21:47)  

>  что посоветуете?

http://groups.google.com/group/fido7.su.win32.prog/msg/1984ffcf8ae2b539

--
Regards, LVT.


 
Johnmen ©   (2007-03-25 00:11) [3]

...
BringWindowToTop(PrevInstWnd);
SetForegroundWindow(PrevInstWnd);
...


 
Степан   (2007-03-25 11:47) [4]

Спасибо, буду пробовать



Страницы: 1 вся ветка

Текущий архив: 2007.04.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
4-1164385794
trubin
2006-11-24 19:29
2007.04.15
Word против waitForSingleObject


2-1174645916
Romas81
2007-03-23 13:31
2007.04.15
Обход через tab элементов на разных панелях


15-1174476821
Johnmen
2007-03-21 14:33
2007.04.15
Дайте код!


15-1174387055
Gragdanin
2007-03-20 13:37
2007.04.15
Минусовки песен


15-1174410706
@!!ex
2007-03-20 20:11
2007.04.15
Интернет заработок.