Форум: "WinAPI";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизПерехват сообщений компонентом. Найти похожие ветки
← →
Awod (2004-07-26 20:47) [0]Добрый день!
Есть невизуальный компонент наследник от TComponent. Как сделать так чтобы компонент обрабатывал сообщения системы?
Я предположил что можно создать невидимое окно и с его помощью отлавливать сообщения. В конструкторе компоненента я написал такой код:
begin
FWndHandMessage := CreateWindow("static", "",
WS_POPUP,0,0,0,0,0,0,0,nil);
FClientInstance := Classes.MakeObjectInstance(ClientWndProc);
FDefClientProc := Pointer(GetWindowLong(FWndHandMessage,GWL_WNDPROC));
SetWindowLong(FWndHandMessage, GWL_WNDPROC, Longint(FClientInstance));
end;
Нно сообщения в ClientWndProc приходят лишь в случае если сообщение посылается лично этому окну (SendMessage(FWndHandMessage,1500,1,1);), а хотелось бы чтобы он обрабатывал и сообщения отправленней всем (SendMessage(HWND_BROADCAST,1500,1,1);).
Как это сделать?
← →
Fay © (2004-07-26 21:49) [1]BROADCAST приходит к Application. Там и лови.
← →
Awod (2004-07-27 09:13) [2]А как сделать так чтобы сообщение приходило именно ко ВСЕМ компонентам (несколько приложений использующих один компонент должны обмениваться сообщениями, так чтобы это было не заметно для самого приложения)?
← →
Игорь Шевченко © (2004-07-27 11:09) [3]
> Как сделать так чтобы компонент обрабатывал сообщения системы?
А смысл ?
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.036 c