# QT_WeChat **Repository Path**: sadu_tqx/qt_wechat ## Basic Information - **Project Name**: QT_WeChat - **Description**: 这是一个基于Qt开发的聊天工具,类似于微信,目前还在开发阶段 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 1 - **Created**: 2023-05-20 - **Last Updated**: 2024-12-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 1 项目概述 这是一个类似于微信的基于Qt的多人聊天应用(后面简称为应用),包括客户端和服务端。目前主要实现了多人在线聊天,包括发送文字和文件。 本项目主要是为了学习Qt的多线程网络通信相关的内容做的,主要是写的服务器,客户端功能太多,目前没有做很多,就做了好友列表中消息的收发。后期有时间继续拓展! # 2 开发环境 编辑器:Visual Studio 2019 Qt版本:5.15.2 编译器:msvc2019_64 ![image-20230917201031834](README.assets/image-20230917201031834.png) ![image-20230917201055044](README.assets/image-20230917201055044.png) ![image-20230917201144335](README.assets/image-20230917201144335.png) ![image-20230917201917676](README.assets/image-20230917201917676.png) # 3 服务器介绍 服务器主要是做消息的转发,采用的是TCP进行通信,多个用户连接服务器,通过创建线程池的方式对多用户进行处理,线程数量可以自行设置(或者自己写个算法自己动态调整也行),目前设置的是5。用户发送消息是,通过获取from_id和to_id确定通信双方,从而实现消息的转发。对于文件的发送,通过两次(第一次发送文件的大小,第二次发送文件的内容)实现了文件的转发。 # 4 客户端介绍 客户端目前实现的功能主要就是 消息的收发,但是代码是真的多,界面上的东西太多了。后期进行拓展很方便。 # 5 具体的实现细节请参考客户端和服务端下面的README文件