Вниз
Скачать: 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.023 c
1-1093861668
Ragazor
2004-08-30 14:27
2004.09.12
.Items , .lines


14-1092983461
Dimka Maslov
2004-08-20 10:31
2004.09.12
Юридическая задача


14-1093516698
Zn
2004-08-26 14:38
2004.09.12
Кто что-нибудь слышал о Gallileo?


4-1090914593
ASMiD
2004-07-27 11:49
2004.09.12
Программирование пультов ДУ


1-1093845591
Zhekson
2004-08-30 09:59
2004.09.12
AdvStringGrid for Delphi7




   Наверх