Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.48 MB
Время: 0.014 c
2-1256198587
Andrewtitoff
2009-10-22 12:03
2009.12.13
ADO не удается найти строку для обновления


6-1197208549
Свой
2007-12-09 16:55
2009.12.13
ASP и .NET


2-1256444215
STD
2009-10-25 07:16
2009.12.13
TIcon


2-1256122585
FEV
2009-10-21 14:56
2009.12.13
Число в строке...


15-1255207930
Суслик_
2009-10-11 00:52
2009.12.13
Клауд компьютинг в массы...