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

Обработка сообщений   Найти похожие ветки 

 
Gray2   (2005-09-08 23:15) [0]

Подскажите как можно отправить сообщение (SendMessage) из одного приложения и обработать в другом?


 
Sumor   (2005-09-09 00:10) [1]

Нужен хендл того окна, где ты будешь обрабатывать.
Добывается через FindWindow либо по классу окна, либо по названию.
Затем SendMessage(hWin, message, параметр1, параметр2)

hWin - из FindWindow, message - то самое сообщение, параметры прилагаются к сообщению.


 
Gray2   (2005-09-09 20:44) [2]

Это отправить сообщение, а как его поймать во втором приложении?


 
TJLEXX   (2005-09-09 21:02) [3]

Можно так:

const
 WM_MYMESSAGE = $0001;

type
 TForm1 = class(TForm)
   Button1: TButton;
 private
   { Private declarations }
 public
   procedure MyProc(var Message: TWMChar); message WM_MYMESSAGE;
 end;

Только хендл сообщения с умом подбирать надо: Microsoft для пользовательских сообщений в хендле како-то бит держит(не помню какой), а то со стандартными пересекатся могут.


 
Eraser ©   (2005-09-09 21:22) [4]

TJLEXX   (09.09.05 21:02) [3]
Microsoft для пользовательских сообщений в хендле како-то бит держит


Не то чтобы бит...
The WM_USER constant is used by applications to help define private messages.

Range Meaning
0 through WM_USER - 1 Messages reserved for use by Windows.
WM_USER through 0x7FFF Integer messages for use by private window classes.

____
А вообще лучше работать через RegisterWindowMessage.
0x8000 through 0xBFFF Messages reserved for future use by Windows.
0xC000 through 0xFFFF String messages for use by applications.
Greater than 0xFFFF Reserved by Windows for future use.


 
begin...end ©   (2005-09-09 21:36) [5]


> Gray2   (09.09.05 20:44) [2]
> Это отправить сообщение, а как его поймать во втором приложении?

Добавить код обработки сообщения в оконную функцию.



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

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



Память: 0.46 MB
Время: 0.027 c
3-1128317628
RUYurik
2005-10-03 09:33
2005.11.13
IBReplicator


2-1129729392
nikolas
2005-10-19 17:43
2005.11.13
Проблема с массивом


14-1129912154
qwerty2k3
2005-10-21 20:29
2005.11.13
IE не открывает ссылки


14-1129729150
lightix
2005-10-19 17:39
2005.11.13
QuickReport у не нравится лазерный принтер samsung


4-1126085594
jeka_t
2005-09-07 13:33
2005.11.13
Как открывать документы при помощи CreateProcess




   Наверх