Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сообщение приложению не имеющего окна [D7, WinXP]


alex-drob ©   (2005-08-16 11:39:00) 

Есть приложение не имеющие форму.
Как зделать чтобы при запуске копии приложения они оба закрывались.
Как закрыть копию я знаю. А как послать сообщение приложению не имеющему окна и как его обработать?

тело приложения выполняется в цикле:


var b:boolean;
begin
...
while b do
begin
...
end;
...// эту строку нужно выполнить при закрытии приложения.
end.


Вобщем нужно чтобы при запуске копии приложения в первом приложении присвоить b:=false;


alex-drob   (2005-08-16 15:54:00) [1]

Спасибо всем за помощь.


Digitman   (2005-08-16 15:47:00) [2]


> как можно получить сообщение посланное PostThreadMessage()?


by Get/Peekmessage


alex-drob   (2005-08-16 15:31:00) [3]

Приложение моё.


>  и положи в MMF.

А можно поподробней, никогда не делал токого.

И как можно получить сообщение посланное PostThreadMessage()?


DVM   (2005-08-16 12:53:00) [4]


> скорей всего, автором имелось ввиду "чужое" приложение,
> так что GetCurrentThreadId() здесь - как корове седло

Вряд ли речь идет о чужом приложении, учитывая [0], [2].


Digitman   (2005-08-16 12:30:00) [5]


> DVM ©   (16.08.05 12:09) [6]


> GetCurrentThreadId()


скорей всего, автором имелось ввиду "чужое" приложение, так что GetCurrentThreadId() здесь - как корове седло


DVM   (2005-08-16 12:09:00) [6]


> А как получить ThreadId?

GetCurrentThreadId() получи внутри своего приложения и положи в MMF.


Digitman   (2005-08-16 12:05:00) [7]


> alex-drob ©   (16.08.05 11:47) [4]
> Значит трэду.


Сообщения трэду м.б. отправлены асинхроннойф-цией PostThreadMessage()


alex-drob   (2005-08-16 11:47:00) [8]


> Digitman ©   (16.08.05 11:44) [3]

Значит трэду.


> DVM ©   (16.08.05 11:40) [1]

А как получить ThreadId?


alex-drob   (2005-08-16 11:44:00) [9]


> цикл выборки сообщений

А как это можно зделать?


Digitman   (2005-08-16 11:44:00) [10]


> как послать сообщение приложению


никак.

сообщение м.б. отправлено ЛИБО окнуЛИБО трэду, НО не приложению.


DVM   (2005-08-16 11:40:00) [11]


> А как послать сообщение приложению не имеющему окна и как
> его обработать?

PostThreadMessage(). Только цикл выборки сообщений надо будет организовать в принимающем приложении.


Наверх

Титульная страница Поиск, карта сайта Написать письмо