Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Russian_Dragon
10 / 11 / 0
Регистрация: 18.02.2012
Сообщений: 140
#1

Именованные каналы. Передача сообщений - C++

21.08.2013, 14:20. Просмотров 450. Ответов 0
Метки нет (Все метки)

Приветствую народ.
Есть такая вот проблемка.
Создаю я именованный канал в режиме передачи сообщений на С++
C++
1
2
this->pipeServer = CreateNamedPipe("\\\\.\\pipe\\BridgeAnalyst", PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT, 1, 100, 100, NMPWAIT_WAIT_FOREVER, NULL);
BOOL isConnected = ConnectNamedPipe(this->pipeServer, NULL);
Подключаюсь к нему с другого приложения на С#
C#
1
2
3
PipeClient = new NamedPipeClientStream(".", "BridgeAnalyst", PipeDirection.InOut);
PipeClient.Connect();
PipeClient.ReadMode = PipeTransmissionMode.Message;
И всё вроде хорошо, байты бегут. Но мне нужна передача не байтами, а сообщениями.
Но почему-то в упор не получается.
Как передавать через канал не отдельные байты, а сообщения?


П.с.
Для теста решил проверить информацию об уже созданном канале
C++
1
2
3
4
5
6
LPDWORD lpFlags = new DWORD();         
        LPDWORD lpOutBufferSize = new DWORD();
        LPDWORD lpInBufferSize = new DWORD();
        LPDWORD lpMaxInstances = new DWORD();
 
        GetNamedPipeInfo(this->pipeServer, lpFlags, lpOutBufferSize, lpInBufferSize, lpMaxInstances);
Получилось, что во флагах, у меня проставлено не
PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT
а вот что
PIPE_TYPE_MESSAGE | PIPE_NOWAIT
Теперь я вообще не понимаю - что я не так делаю?

Помогите, разобраться, пожалуйста, а то байтами вообще не удобно читать информацию.

Добавлено через 8 минут
А, понял, проблему.
Изначально посылался один 0 бит, на котором я и психологически зациклился.
А после уже идет нужный пакет[сообщение] с отправляемой информацией.
Извиняюсь за новую тему.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.08.2013, 14:20     Именованные каналы. Передача сообщений
Посмотрите здесь:

Именованные каналы - C++
Привет всем. Помогите с программой. Есть листинг программы на с++ клиент-сервер. Мне надо ее изменить - создать сервер времени, который...

Процессы и именованные каналы - C++
Подскажите пожалуйста, если можно примером кода или его наброском. Так же можно сбросить по возможности сайты с примерами. Нужно с...

Передача сообщений в окно - C++
Есть прогрмка , написаная мной же с использованием MFC в которой имеется поле для ввода и кнопка. По нажатию кнопки из текстового поля...

Книги по С++ для дельфиста (интересы: реализация классов, передача сообщений классам, RTTI, СOM) - C++
Приветствую! И так перейду к делу. Я дельфист. И тут возникла задача в реализации кросс-платформенной программы которая использует ffmeg...

Именованные и неименованные константы - C++
Друзья, здравствуйте! Не понимаю, что из себя представляют неименованные константы. Именованные - это const тип переменная =...

Озера и каналы - C++
Есть несколько озер, между озерами прорыты каналы, из любого озера в любое можно попасть. Но каналы имеют разную ширину, поэтому лодки...

Передача значения и передача переменной - C++
объясните мне разницу...и с кодами пожалуйста...думаю передача значений это через ссылки\указатели,а передача переменных-переменных ...

Очередь сообщений - C++
В очередь сообщений необходимо поместить сообщение, содержащее список файлов из текущего каталога. Как лучше всего извлечь эту инфу? Все,...

Последовательность сообщений - C++
Здравствуйте. Есть переменная char obuf = "Hello from Client"; как передать последовательность сообщений вида Hello from Client xxx (xxx ...

Механизм сообщений в QNX - C++
Здравствуйте товарищи, помогите пожалуйста доделать программу. 1. Клиент-поток пишет строку и передает на сервер. Сервер принимает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru