木三136 2021-07-16 14:26 采纳率: 78.9%
浏览 90
已结题

vs +qt 使用tcp实现本地通信

当我用服务器给客户端发送消息时 客户端可以成功接收到 但是用客户端给服务器发消息时 服务器就接收不到消息
并且控制台有如下输出

img

猜测是服务器无法 匹配到socket 导致无法绑定信号槽 这是什么原因啊?

  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-07-16 14:45
    关注

    Qtcpserver没有readyread信号。应该是这样:
    1.建立接收连接请求的信号槽
    connect(m_pTcpServer,SIGNAL(newConnection()),this,SLOT(newConnectionSlot()));
    2.在接收到连接请求后,在newConnectionSlot()槽函数中得到建立的socket:
    m_pTcpSocket = m_pTcpServer->nextPendingConnection();//获取已经建立的连接的子套接字
    3.套接字关联接受客户端发来数据的槽
    connect(m_pTcpSocket, SIGNAL(readyRead()),this, SLOT(DataReceived()));

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月11日
  • 已采纳回答 2月3日
  • 创建了问题 7月16日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助