![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| bass |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 315 Регистрация: 5.8.2007 Репутация: 2 Всего: 2 |
http://frolov-lib.ru/books/bsp/v27/ch2_4.htm
В данной статье написано что можно организовать передачу данных меджу несколькими процессами....... Чето я не чего не понял.............. Нужно от одного клиента передовать нескольким серверам...... Пишу такой код, где в потоке опрашиваю маил слот.......... Если я его запускаю один, то все ок......... А вот если я запускаю второй процесс, то майл слот не опрашиваеться....((((((( hMailslot = CreateMailslot("\\\\.\\mailslot\\SendMessageSlot1",0,MAILSLOT_WAIT_FOREVER,&sa); ReadFile(hMailslot,BufferEventRecev1,1024,&dwBytesRead,(LPOVERLAPPED)NULL); Функция CreateMailslot возвращает -1 ...... Как организовать широковещательную передачу сообщений, коль это возможно... Заранее спасибо..... |
|||
|
||||
| feodorv |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 9 Всего: 45 |
Майлслоты открываются на сервере (как раз функцией CreateMailslot), а клиенты цепляются к майлслоту через CreateFile:
Так что не совсем понятно, что Вы имеете в виду под Кто сервер, кто клиент? Правильно написать так: если я его создаю один (CreateMailslot - функция именно создания слота, в отличии от CreateFile, где слово Create не верно отражает суть этой функции). Естественно, одновременно второй слот с тем же именем Вы создать не сможете:
Добавлено через 2 минуты и 15 секунд Можно посмотреть код ошибки, вызвав GetLastError(). -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
||||
|
|||||
| bass |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 315 Регистрация: 5.8.2007 Репутация: 2 Всего: 2 |
Я все понимаю может не так выразился..... это написал код сервера.......... Запускаю одинэкземпляр приложения все ок....
Запускаю второй экземпляр приложения возвращает -1............. А хочеться чтобы неслоклько экземпляров приложения получали сообщения........ |
|||
|
||||
| feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 9 Всего: 45 |
Ага))) Теперь понятнее))) На одном компе так вряд ли получится, только для разных компов в рамках одного домена. Можно завести выделенный майлслот-сервер, который бы занимался рассылкой сообщения от клиента другим серверам, которые подключились к этому выделенному серверу... -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
| bass |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 315 Регистрация: 5.8.2007 Репутация: 2 Всего: 2 |
Понял выкрутился так создаю сервер имя и цифорка 1 второй если не открываеться с цифоркой два и т.д и клиент посылает 1 = S.....
Спасибо... За помощь...... |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |