Qt多网卡组播问题解决方法

1 篇文章 0 订阅
1 篇文章 0 订阅

一、概述

Qt组播实现起来比较简单,基本步骤是先绑定IP地址和端口,然后加入组播组,将网卡数据准备完成信号与一个数据接收处理的槽函数连接即可。但是如果计算机上多于两块网卡,就必须再增加两个步骤才行:使用setMulticastInterface设置组播网卡,然后加入组播的同时指定网卡joinMulticastGroup(groupAddr, lni[nIndex])。否则的话向组播地址发送数据时,对端的服务器程序就无法接收到数据。

二、运行效果图

三、简要步骤

  1. 绑定IP地址和端口bind(QHostAddress::AnyIPv4, nPort, QUdpSocket::ShareAddress);
  2. 设置组播网卡setMulticastInterface(lni[nIndex]);
  3. 加入组播组并指定使用的网卡joinMulticastGroup(groupAddr, lni[nIndex]);
  4. 连接Socket数据准备完成信号与数据接收处理槽函数。

四、示例项目

演示项目下载

  • 4
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值