МихаилллMay 1, 2019, 8:13 a.m.
По какому принципу строится месенджер?
Добрый день.
По какому принципу делаются чаты, к примеру, работающие в одной сети?
Как одна программ может найти другую и обмениваться информацией?
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
l
- laei
- April 23, 2024, 9:19 a.m.
C ++ - Test 004. Pointers, Arrays and Loops
- Result:10points,
- Rating points-10
Last comments
Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Lesson 007. Working with ICMP Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоFeb. 5, 2024, 1:50 a.m.
EVADec. 25, 2023, 10:30 a.m.
Boost - static linking in CMake project under Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Lesson 056. Connecting the Boost library in Qt for MinGW and MSVC compilers Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Now discuss on the forum
DA
Unlock Your Aesthetic Potential: Explore MSC in Facial Aesthetics and Cosmetology in India Embark on a transformative journey with an msc in facial aesthetics and cosmetology in india . Delve into the intricate world of beauty and rejuvenation, guided by expert faculty and …
Dr Gangil AcademicsApril 20, 2024, 7:45 a.m.
Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Евгений, добрый день! Такой вопрос. Верно ли следующее утверждение: Любое Android-приложение, написанное на Java/Kotlin чисто теоретически (пусть и с большими трудностями) можно написать и на C+…
Павел ДорофеевApril 14, 2024, 2:35 a.m.
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
Добрый день.
Ну самый простой и базовый вариант - это клиент-серверная архитектура. Есть сервер, который имеет какой-то адрес в сети и есть клиентские приложения, который знают адрес сервера. Они подключаются к серверу, получают информацию о других устройствах/клиентах и обмениваются через сервер сообщениями.
В принципе, даже здесь на сайте уже сделан некоторый задел для мессенджера. Например, я сегодня наконец-то добавил реалтайм в личные диалоги. Клиентами выступают браузеры, ну а сервером бэкенд сайта.
Или у вас были какие-то более детальные вопросы?
Спасибо. А как делают без сервера?
Кида вам архив, у меня там небольшая такая консольная прога, но там с сервером. Посмотрите как это работает в связке. Думаю что то найдете полезное.
Sockets.rar
Спасибо.
У меня в детстве был чат, работающий без сервера. Вот и заинтересовался, как без сервера прогоаммы находят друг друга в сети и обмениваются данными.
Если без сервера, то можно использовать broadcast рассылку, через которую можно оповестить все устройства внутри сети о появлении нового клиента. При этом каждый клиент должен слушать определённый порт, который вы заложили в своём чате, и слушать данную broadcast рассылку. Если делать это на Qt, то думаю, что тут для прослушивания порта нужно у каждого клиента использовать QTcpServer, а рассылку broadcast сообщения делать через QTcpSocket или QUdpSocket. Broadcast сообщение - это сообщение для всей сети. Обычно Broadcast рассылку используют внутри сети, то есть на интернет чаты не рассчитывайте.
Спасибо