Вниз
Скачать: CL | DM;

Найти запущенную копию приложения и установить на нее фокус   Найти похожие ветки 

← →
Rem   (2004-06-04 12:57) [0]

При запуске приложения проверяется наличие уже запущенной копии:

Mutex := OpenMutex(MUTEX_ALL_ACCESS, false, csAppName);
if (Mutex <> 0) then
begin
 Wnd := FindWindow(0, csAppName);
 BringWindowToTop(Wnd); // это работает не так, как нужно (см. далее)
 // надо установить фокус на уже запущенное приложение
 Halt(0);
end;

Можно было бы (как в примере) просто установить фокус на основное окно приложения, но...
Проблема в том, что, в некоторых режимах, основное окно может быть невидимым, а остальные окна - видимы. Каким образом установить фокус на любое окно приложения, видимое в данный момент? То-есть, установить фокус на приложение (коряво как-то сказано)?


← →
Clickmaker ©   (2004-06-04 13:06) [1]

SetForegroundWindow


← →
Rem   (2004-06-04 13:07) [2]

Спасибо



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
1-1089196233
CyBeR
2004-07-07 14:30
2004.07.18
Не будет ли это коряво???


3-1088020852
Bizon's
2004-06-24 00:00
2004.07.18
SQL запрос


1-1088856022
Tempo
2004-07-03 16:00
2004.07.18
Передача фокуса компоненту


1-1088690411
chistyakov
2004-07-01 18:00
2004.07.18
Загрузка dll


6-1084803810
Artem03
2004-05-17 18:23
2004.07.18
TIdTCPServer, TIdTCPClient - передача файлов




   Наверх