This is a network demo for this project.
- 服务端,设置端口后
Listen Port开始监听 - 服务端
Restart后可重启服务端,重复步骤1 - 客户端,
ip地址默认为本地回环地址,设置ip与端口后Connect连接到服务端,成功连接后ip一行出现Connected并发送READY_OP - 客户端连接成功后,在
Send左侧输入信息,Send即可将信息以CHAT_OP形式发送至服务端,并转发至另一连接的客户端(如果有) - 客户端收到信息呈现在
Receive左侧 - 客户端
Disconnect后断开与服务端连接,重复步骤3 - 端口取值为
[1,65535]内的整数
./ServerDemo/src/下为服务端demo源码./ClientDemo/src/下为客户端demo源码- 项目均为
CMake构建 ./NetworkLibrary/下为第三阶段提供的网络库
在Windows 11环境下,本项目可通过三种方式编译
-
使用
Qt Creator打开ClientDemo/src与ServerDemo/src下的CMakeLists.txt文件,直接构建即可。 -
使用
vscode编译,参考主仓库中的教程。 -
命令行编译,需要将请将库
Qt6添加至环境变量-系统变量-PathF:\Qt6\6.6.1\mingw_64\binF:\Qt6\6.6.1\mingw_64\lib替换成你的 Qt6 绝对路径 编译并运行ClientDemo的步骤如下:// powershell > cd ClientDemo > mkdir build > cd build > cmake -G Ninja ../src -DCMAKE_CXX_COMPILER:FILEPATH=F:\\Qt6\\Tools\\mingw1120_64\\bin\\g++.exe // 请替换成你的 Qt6 自带编译器的绝对路径 > ninja > ./bin/ClientDemo编译并运行
ServerDemo的步骤如下:// powershell > cd ServerDemo > mkdir build > cd build > cmake -G Ninja ../src -DCMAKE_CXX_COMPILER:FILEPATH=F:\\Qt6\\Tools\\mingw1120_64\\bin\\g++.exe // 请替换成你的 Qt6 自带编译器的绝对路径 > ninja > ./bin/ServerDemo
Ninja是CMake的一个生成器,可以通过-G Ninja参数生成Ninja构建文件。由于Windows没有make,Ninja是一个很好的替代品。 Ninja官方文档
当然可以,Visual Studio、MinGW、MSYS2等都是可以的,只是Ninja更快更轻量。
例如,你可以使用命令cmake -G "MinGW Makefiles" ../src生成MinGW构建文件。
可以参考这篇博客,安装非常便捷,这也是为什么推荐使用Ninja。