热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

网络编程基于MFC的仿QQ聊天室(2020发布)

基于MFC的仿QQ聊天室(2020)有幸学习过网络编程的一些知识,出于对编程的热爱,把曾经的一次简单实践编程作业进行了自定义的完成。编程所需:编程工具为VS2010,需要掌握MFC

基于MFC的仿QQ聊天室(2020)

有幸学习过网络编程的一些知识,出于对编程的热爱,把曾经的一次简单实践编程作业进行了自定义的完成。
编程所需:
编程工具为VS 2010,需要掌握MFC的基本操作以及网络编程的基本原理,对windows套接字有一定理解。
注:本文不提供开发教程,只提供使用步骤、exe文件以及源码,我想对于有一定开发基础的人来说足够了。

主要的功能实现如下:

服务器端:
1.在线人数和列表、昵称显示;
2.群公告;
3.服务器日志、全局消息;
4.历史记录自动保存;
功能截图:
网络编程-基于MFC的仿QQ聊天室(2020发布)
客户端:
1.昵称设置;
2.私聊、群聊;
3.在线用户列表;
4.登录日志;
5.历史记录自动保存:
客户端截图:
网络编程-基于MFC的仿QQ聊天室(2020发布)
使用演示及必要说明:
历史记录说明:
客户端中包括日志、群聊和私聊消息;服务器中包括日志和全局消息。这些记录都是在断开连接后自动保存,若需要删除可在txt文件中手动删除。如图(仅以客户端为例):
网络编程-基于MFC的仿QQ聊天室(2020发布)
以下,做操作演示
启动一次服务器、启动两次客户端,服务器端口自行选择合适的(需要注意不要与常用端口号冲突,这些涉及到计算机网络请自行百度,建议大于1024)即可,客户端端口设置需与服务器端口一致才可连接成功。由于在本机上演示,故地址选择127.0.0.1。

1.启动服务器:
网络编程-基于MFC的仿QQ聊天室(2020发布)
2.启动两个客户端并连接,由服务器发送公告:
网络编程-基于MFC的仿QQ聊天室(2020发布)
3.群聊(你好11发起,无需设置私聊ID,输入消息点击群发即可):
网络编程-基于MFC的仿QQ聊天室(2020发布)
4.私聊(你好11发起,必须设置私聊ID,输入消息点击私发):
网络编程-基于MFC的仿QQ聊天室(2020发布)
注:点击断开才可以自动保存记录;
5.历史记录
点击读取按钮,如图:
网络编程-基于MFC的仿QQ聊天室(2020发布)
6.查看(任选一个即可)
网络编程-基于MFC的仿QQ聊天室(2020发布)
至此,演示完毕!!!
若有疑问,可评论区提出或联系本人QQ:1587128132(备注理由CSDN,否则不通过验证)。
源码下载:
MFC聊天室


推荐阅读
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 服务器虚拟化存储设计,完美规划储存与资源,部署高性能虚拟化桌面
    规划部署虚拟桌面环境前,必须先估算目前所使用实体桌面环境的工作负载与IOPS性能,并慎选储存设备。唯有谨慎估算贴近实际的IOPS性能,才能 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • 项目经理的角色与职责解析
    本文探讨了项目经理的核心职责,结合个人项目管理和PMBOK指南的经验,深入分析了项目管理的基本概念及其与运维、战略规划之间的关系。 ... [详细]
  • 默认情况下,Git 使用 Nano 编辑器进行提交信息的编辑,但如果您更喜欢使用 Vim,可以通过简单的配置更改来实现这一变化。本文将指导您如何通过修改全局配置文件来设置 Vim 作为默认的 Git 提交编辑器。 ... [详细]
  • 探索Java 11中的ZGC垃圾收集器
    Java 11引入了一种新的垃圾收集器——ZGC,由Oracle公司研发,旨在支持TB级别的内存容量,并保证极低的暂停时间。本文将探讨ZGC的开发背景、技术特点及其潜在的应用前景。 ... [详细]
  • 本文探讨了使用普通生成函数和指数生成函数解决组合与排列问题的方法,特别是在处理特定路径计数问题时的应用。文章通过详细分析和代码实现,展示了如何高效地计算在给定条件下不相邻相同元素的排列数量。 ... [详细]
  • 在Notepad++中配置Markdown语法高亮及实时预览功能
    本文详细介绍了如何在Notepad++中配置Markdown语法高亮和实时预览功能,包括必要的插件安装和设置步骤。 ... [详细]
  • 本文探讨了如何利用RxJS库在AngularJS应用中实现对用户单击和拖动操作的精确区分,特别是在调整区域大小的场景下。 ... [详细]
  • 探讨如何在映射文件中处理重复的属性字段,以避免数据操作时出现错误。 ... [详细]
  • 在测试软件或进行系统维护时,有时会遇到电脑蓝屏的情况,即便使用了沙盒环境也无法完全避免。本文将详细介绍常见的蓝屏错误代码及其解决方案,帮助用户快速定位并解决问题。 ... [详细]
  • JavaScript 页面卸载事件详解 (onunload)
    当用户从页面离开时(如关闭页面或刷新页面),会触发 onunload 事件,此时可以执行预设的脚本。需要注意的是,不同的浏览器对 onunload 事件的支持程度可能有所不同。 ... [详细]
author-avatar
Hyukjae333
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有