Текущий архив: 2009.12.13;
Скачать: CL | DM;
ВнизВзаимодействие с service (службой) Найти похожие ветки
← →
Nucer (2008-05-15 15:36) [0]Пишу службу, необходимо обеспечить связь приложения с этой службой. Каким образом? SendMessage/PostMessage я так понимаю отпадают. Использовать TCP/IP?
← →
Сергей М. © (2008-05-15 15:56) [1]
> SendMessage/PostMessage я так понимаю отпадают
Отпадают, если корреспонденты разнесены по разным хостам или сервис не взаимодействует с рабочим столом.
> Использовать TCP/IP?
Как универсальный на все случаи жизни вариант - да.
При определенных условиях можно также воспользоваться PostThreadMessage, NamedPipes, MMF
← →
Leonid Troyanovsky © (2008-05-15 22:04) [2]
> Сергей М. © (15.05.08 15:56) [1]
> При определенных условиях можно также воспользоваться PostThreadMessage
Для этого сервис должен быть GUI.
В любом случае ControlService лучше.
--
Regards, LVT.
← →
DVM © (2008-05-15 22:41) [3]
> При определенных условиях можно также воспользоваться PostThreadMessage
И главное из этих условий, выполнение потока службы на том же десктопе, что и вызывающий PostThreadMessage поток. Что не всегда возможно. Способ плохой.
> Nucer (15.05.08 15:36)
Вообще варианты такие:
1) Сокеты - самый универсальный и кроссплатформенный механизм.
2) Named Pipes - удобный, но не всегда механизм.
3) RPC - весьма мудреный способ
4) DCOM - упрощение от предыдущего
5) Совместно используемая память, в том числе MMF
6) Сообщения
Я бы сокеты выбрал.
← →
DVM © (2008-05-15 22:45) [4]
> Для этого сервис должен быть GUI.
Для этого должна быть лишь очередь сообщений у потока. А она будет автоматически создана, как только будет вызвана хотя бы одна функция GDI или USER. А поток само собой должен выбирать сообщения из очереди.
Причем тут GUI? Окна к PostThreadMessage отношения не имеют.
← →
Leonid Troyanovsky © (2008-05-15 23:38) [5]
> DVM © (15.05.08 22:45) [4]
> Причем тут GUI? Окна к PostThreadMessage отношения не имеют.
А я говорил про окна?
У сервиса д.б. цикл обработки сообщений.
Любой же вызов user32, как было справедливо отмечено, сделает поток гуевым.
Если же этот поток - не первичный, то место этому сервису в кунсткамере,
а авторам - в зале славы ;)
Короче говоря, RTFM: $APPTYPE
--
Regards, LVT.
← →
имя (2008-12-08 23:14) [6]Удалено модератором
Страницы: 1 вся ветка
Текущий архив: 2009.12.13;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.005 c