Russian Qt Forum
Ноябрь 25, 2024, 21:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Вопрос по QLocalSocket (pipe)  (Прочитано 7340 раз)
merke
Гость
« : Декабрь 25, 2010, 15:29 »

Всем привет!

Встала задача обмениваться данными между двумя приложениями написанными на Qt, один из способов было использования обычных сокетов, всё на ура!
Но теперь нужно отказаться от сокетов и найти другой способ обмена данными между двумя приложениями. QSharedMemory слишком замысловат на первый взгляд и как я понял, чтобы отследить есть ли новые данные в расшаренной памяти нужно использовать таймер. Но блин не то это... Мой выбор пал на QLocalSocket - всё наглядно и на первый взгляд понятно, почти те же самые сокеты.

Теперь нескольно вопросов:

Можно ли использовать QLocalSocket по локальной сети, т.е. сервер на одном компе организации, а клиент на другой машине? Если да, то как писать адрес сервера, если брать пример из Qt Demos там адрес сервера "fortune", если к нему обращать по сети, то как записать адрес?

Можно таким способом общаться с приложением написанным на Visual Basic 6? Допустим на VB будет реализован клиент, а на Qt сервер?

Вот пока это всё, что хотел спросить!

Буду очень рад помощи!

С уважением, Александр!
Записан
brankovic
Гость
« Ответ #1 : Декабрь 25, 2010, 15:40 »

Локальный сокет работает в пределах ОС, ни по какой сети использовать нельзя.

Чем не нравятся обычные сокеты? Никакого другого вменяемого средства для общения по сети нет, по скорости другими средствами ничего не выиграете.

Кстати, если вам нужно по сети, то shared memory вообще не причём.
Записан
merke
Гость
« Ответ #2 : Декабрь 25, 2010, 17:11 »

В среде операционной системы Microsoft Windows NT вам доступно такое удобное средство передачи данных между параллельно работающими процессами, как каналы типа Pipe. Это средство позволяет организовать передачу данных между локальными процессами, а также между процессами, запущенными на различных рабочих станциях в сети.

А как это объясните?
Записан
aarlan
Гость
« Ответ #3 : Декабрь 25, 2010, 18:00 »

видимо ты это имеешь в виду
http://frolov-lib.ru/books/bsp/v27/ch2_3.htm
только это чисто виндовая фича. qt тут не причем. да и наверняка это просто удобная обертка над сокетами
Записан
merke
Гость
« Ответ #4 : Декабрь 25, 2010, 18:09 »

так мне видна только то и нужна!
Записан
brankovic
Гость
« Ответ #5 : Декабрь 25, 2010, 20:03 »

Ааа.. Объясню так, pipe столько лет использовал под юникс, что думал pipe в мире один. А оказывается и под винду есть пайп! Виноват, извините за десу.

Проблема в том, что вы задаёте вопрос, не аргументируя, чем вам не подходит стандартный ответ. Это странно, согласитесь. Чтобы использовать фичу из виндовс нт, надо на 100% знать в чём её плюсы, не похоже на вашу ситуацию.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.041 секунд. Запросов: 20.