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

Вниз

Как отловить активирование приложения   Найти похожие ветки 

 
Ragazor   (2005-09-12 11:40) [0]

Есть 1 приложение "А1" из него запускается 2 - "А2" через функцию, которая ждет закрытия "А2" и выполнятеся дальше "А1".
В этой функции ожидание порисходит внутри такого цикла
repeat
 case WaitForSingleObject(
     ProcessInfo.hProcess, 100) of
  WAIT_OBJECT_0 : Closed := True;
  WAIT_FAILED : RaiseLastWin32Error;
 end;
 Application.ProcessMessages;
until (Closed);

Вопрос: Как отловить, что пользователь переключился на окно программы "А1", при этом не закрыв "А2", и далее принудительно активировать "А2" вместо "А1"?


 
WM_ACTIVATE   (2005-09-12 11:47) [1]

+ Объекты синхронизации создаваемые на время жизни "А2"


 
Ragazor   (2005-09-12 11:52) [2]

Не совсем понял о чем речь...


 
WM_ACTIVATE   (2005-09-12 12:11) [3]

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

Хотя может проще сделать "А1" ShowWindow(Handle, SW_HIDE); ???


 
Ragazor   (2005-09-12 12:34) [4]

Если можно 2 вариант по подробнее, а то с АПИ у меня туго...


 
Котик Бегемотик   (2005-09-12 12:43) [5]

Покорнейше простите, но:
- если у Вас туго с WinAPI то может следует его подучить ?
- попробуте сначала реализовать с помощью классов Delphi.
Unit SyncObjs + Find All "Mutex".


 
Ragazor   (2005-09-12 13:07) [6]

Покорнейше простите, но:
- если у Вас туго с WinAPI то может следует его подучить ?

Следует, сам знаю... осталось найти время. А работа стоит...


 
Игорь Шевченко ©   (2005-09-12 13:30) [7]


> А работа стоит...


Очевидно, это не наша проблема, не так ли ? Аргумент - "я не хочу изучать, потому что мне надо что-то сделать быстро" является оскорблением для участников форума, так как вы получаете за свою работу деньги, а те, кто вам отвечает - за вашу работу не получает.


 
Ragazor   (2005-09-12 13:45) [8]

Удалено модератором
Примечание: Offtopic


 
Ragazor   (2005-09-12 13:48) [9]

Удалено модератором
Примечание: Offtopic



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
14-1129583047
Silver...
2005-10-18 01:04
2005.11.13
"Универсальный" MP3 диск


4-1126705615
Новичоккк
2005-09-14 17:46
2005.11.13
Определение заголовка окна по PID


2-1129785067
Jolik
2005-10-20 09:11
2005.11.13
Если функция возвращает динамический массив...


1-1129826345
BobbyDigital
2005-10-20 20:39
2005.11.13
функция time


14-1130142429
YurikGL
2005-10-24 12:27
2005.11.13
Стилизованное изображение компьютера