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

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

← →
AlexanderSK   (2004-07-29 13:59) [0]

Разрабатываю сервис для Win2k. Форм он не имеет, но внутри него нужно реализовать обработку сообщений, посылаемых из других модулей этого же приложения. Подскажите, пожалуйста, как это лучше реализовать?

Заранее благодарен!


← →
Digitman ©   (2004-07-29 14:11) [1]

посылай сообщения трэду  сервиса, например,вызовом PostThreadMessage() .. ID трэда сервиса хранится в св-ве TService.ServiceThread.ThreadId

в обработчике TService.OnExecute() в этом случае следует организовать цикл выборки/диспетчеризации этих  сообщений по примерному шаблону

var
 Msg: TMsg;
begin
 while not Terminated do
   begin
     WaitMessage;
     if PeekMessage(Msg, 0, SM_CONTROL, SM_CONTROL, PM_REMOVE) then
       Dispatch(Msg.Message)
     else
       ServiceThread.ProcessRequests(False);
   end;


← →
GanibalLector ©   (2004-07-30 01:50) [2]

RegisterWindowMessage



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

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



Память: 0.45 MB
Время: -0.978 c
3-1092722311
DemonRus
2004-08-17 09:58
2004.09.12
MySQL и ADO


1-1093525656
AlexXn
2004-08-26 17:07
2004.09.12
Тэги HTML


3-1092654497
yaric
2004-08-16 15:08
2004.09.12
Программная деактивация тригерра


10-1036577372
pvnic
2002-11-06 13:09
2004.09.12
вопросы....


14-1093088582
YurikGL
2004-08-21 15:43
2004.09.12
16 цветов




   Наверх