聊天qq模拟聊天系统实验报告

如何删除qq聊天记录  时间:2021-04-17  阅读:()

C卄网络应用程序开发

课程设计

题 目 QQ模拟聊天系统

学 院 软件学院

班 级 10级网冈络工程3班

指导 教师 钱 鸽

姓 名 谢昊天

学 号 1215134046

学年、 学期 2012~2013学年第一学期

1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .引

言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1. 1需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1.2聊天室程序的开发背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1.3 聊天室的设计目标. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .总体

设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2.1 功能要求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2.2 系统主要功能和主要功能描述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .详细

设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

3.1设计流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

3.2客户端的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

3.3服务端的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .运行

结果. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

4.1客户端. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

4.2 服务器端. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

4.3 客户端登陆到服务器端. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

4.4 进行对话. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

4.5 退出服务器端与客户端. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .心得

体会. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .参考

文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

1.引言

计算机网络技术发展至今已经大大超越了人们当初的预想 无论是人们日常的工

作还是学习我们都越来越多的依靠到互联网。各种实时性的聊天娱乐软件也同时诞

生而且为我们的即时通讯带来了众多的方便比如说大家所熟知的腾讯QQ、微软的

MSN、移动的Fetion等都是做的比较成功的实时聊天工具。随着网络的日益普及

各种聊天工具也层出不穷但当我们学习了《T CP/IP协议与网络编程》这门课程之后

我们便会觉得其实要实现简单的网络通讯其实并不难。接下来的课程设计就是针对

一个简单的网络聊天程序利用MF C为开发工具实现基本的通讯功能。

1.1 需求分析 当前是数字信息时代 网络时代任何一种编辑工具都不能忽视在网络上的应用 并且随着Internet的普及和宽带技术的成熟 越来越多的用户进入网络世界中享用浏览新闻、查询信息、发送邮件、在线观看电影等服务享受网络带来的便利和办公的高效与此同时一个新型的 Web应用程序为网民之间提供了一个实时通信的功能和场所这就是聊天室。

在网络早期就开始盛行不论是B B S IRC都有类似网上聊天室的机制。 聊天室为网友提供了实时性对话的渠道是网络上极为流行的一项服务。 聊天室适用于网上会议或闲聊的一些场合。聊天室为网友提供了较好的交友环境 网友之间相互以文字交谈在形式上有点类似笔友的性质却大大节省了书信往返的时间这也是网上交友之所以如此热门的原因。

1.2 聊天室程序的开发背景近年来互连网发展日新月异 网络使空间的距离不再成为人们沟通的障碍世界各个角落的人们可以通过Internet收发邮件、实时聊天、获取最新的资讯。因此本次毕业设计以“面向连接的Win so ck网络会话程序开发”为题制作一个C/S聊天室程序通过制作该程序还能更好的学习网络socket编程的相关知识。

1.3 聊天室的设计目标

本课题是建立聊天通信模型,设计一个聊天室软件包括服务器端和客户端主要功能为 服务器端功能

1、 初始化so cket,创建服务器端。

2、 维护一个链表保存所有用户的IP地址、端口信息。

3、 接受用户传送来的聊天信息然后向链表中的所用用户转发。

4、 接受用户传送来的连接判断命令并向用户发出响应命令。 客户端功能

客户端界面上的两个文本框一个用于显示接受的聊天信息一个用来接受用户输入的聊天信息。当按下“发送”按钮时将信息发送给服务器。

通过本课题的实训设计可以比较深入的了解和掌握WINSOC控件基本属性、方法和事件理解网络聊天通信的概念输控制协议TCP进行数据交流初步掌握网络聊天通信程序的设计方法。并能巩固和扩展大学期间的学习内容进行项目的设计开发训练更好的适应社会的需求。

2.总体设计

2.1 功能要求

1、 支持多个客户端的连接在服务器和多个客户端之间进行数据传输

2、 接收客户端发送的消息并显示在一个列表框中

3、 在用户连接上后有提示显示出连接的用户名字

4、 发送信息时可以显示聊天的所有记录

2.2系统主要功能和主要功能描述 服务器端聊天程序必须能够做3件事情

1、 服务器聊天程序要在待定的端口上等待来自聊天客户的连接请求并且需要维护一个客户连接表 以记录所有成功的连接。

2、 服务器聊天程序要及时接受从各个聊天客户发送过来的信息然后把这些信息转发到一个或多个客户连接。对于公共聊天室服务器将把接受到的信息向除源端外的所有客户发送过去。

3、 服务器还要监控这些连接的状态在客户主动离开或发生故障时从列表中删除相应的表项并及时更新连接表。

这些要求可以通过CSocket类提供的功能实现。从CSocket派生出两个类CListenS o cket和CClientSo cket,它们分别用来侦听客户的连接请求和建立与客户的连接。服务器只需要一个侦听套接字CListen So cket 然后根据客户的连接请求动态创建客户套接字CClientSocket 。客户套接字的数量是不可预知的 因此需要一个列表来记录。

MF C的CPtrList类就能实现这种功能。客户端聊天程序需要完成以下几个功能

1、 客户端聊天程序要负责建立和维护与服务器的连接通过获取用户的设置尝试与

服务器的连接并且随时检测连接的状态。

2、 客户端聊天程序要把用户输入的信息及时发送到聊天服务器。一般情况下 当用

户输入一行信息并且按下回车键后聊天程序就要把这一行信息发送出去才能及

时地满足用户的交互需求。

3、 要随时准备好接受来自服务器的信息随时把接受到的信息显示出来 让用户及

时看到对方的响应。

4、 在用户退出聊天过程是要关闭与服务器的连接。 比较好的做法是提前通知服务器

或者直接给服务器发送一条退出通知使得服务器能够及时掌握客户端的连接状

态把对方客户的退出信息及时发送到对等实体上。

客户端聊天程序需要使用一个通过CSocket类派生出来的CChatSocket类

来实现。该套接字用来发送一个与服务器的连接请求和维持与服务器的连接 发送和接收聊天信息完成上述各项功能。

3.详细设计

3.1设计流程图

3.2客户端的实现

(1)首先启动Visual C++6.0利用MFC AppWizard[EXE建立一个新的MFC工程工程名为 QQ模拟聊天系统在MFCAppWizard Step 1的时候选择Dialog based即基于对话框在Step4时勾选Windows Sockets选项(如图)其他默认值下一步。

(2)客户端主要分为三个窗口第一个是连接窗口需要输入连接到服务器的相关设置信息第二个是聊天信息显示窗口该窗口显示登录服务器以来发送和接收到的消息第三个是消息编辑发送窗口需要输入你要发送的信息内容并发送。

新建一个对话框并添加各种控件如下图:

S3

服务器 端口号: 编辑

编辑

编辑

33 QQ模拟呱天球"容户握…制作谢昊天学号:1215134046

漏辑

SS回车

酷锐云香港(19元/月) ,美国1核2G 19元/月,日本独立物理机,

酷锐云是一家2019年开业的国人主机商家,商家为企业运营,主要销售主VPS服务器,提供挂机宝和云服务器,机房有美国CERA、中国香港安畅和电信,CERA为CN2 GIA线路,提供单机10G+天机盾防御,提供美国原生IP,支持媒体流解锁,商家的套餐价格非常美丽,CERA机房月付20元起,香港安畅机房10M带宽月付25元,有需要的朋友可以入手试试。酷锐云自开业以来一直有着良好的产品稳定性及服务态度,支...

Pia云服务商春节6.66折 美国洛杉矶/中国香港/俄罗斯和深圳机房

Pia云这个商家的云服务器在前面也有介绍过几次,从价格上确实比较便宜。我们可以看到最低云服务器低至月付20元,服务器均采用KVM虚拟架构技术,数据中心包括美国洛杉矶、中国香港、俄罗斯和深圳地区,这次春节活动商家的活动力度比较大推出出全场6.66折,如果我们有需要可以体验。初次体验的记得月付方案,如果合适再续约。pia云春节活动优惠券:piayun-2022 Pia云服务商官方网站我们一起看看这次活...

VirMach(8元/月)KVM VPS,北美、欧洲

VirMach,成立于2014年的美国IDC商家,知名的低价便宜VPS销售商,支持支付宝、微信、PayPal等方式付款购买,主打美国、欧洲暑假中心产品,拥有包括洛杉矶、西雅图、圣何塞、凤凰城在内的11个数据中心可以选择,可以自由搭配1Gbps、2Gbps、10Gbps带宽端口,有Voxility DDoS高防IP可以选择(500Gbps以上的防御能力),并且支持在控制面板付费切换机房和更换IP(带...

如何删除qq聊天记录为你推荐
安装morphvox支持route微信群里正在组织赌博平板ipad支持ipadipadwifiIpad怎么用移动无线上网canvas2html5创建两个canvas后,怎么回到第一个canvasms17-010win10pybaen.10.的硬币是哪国的再中国至多少钱iphonewifi苹果手机怎么扫二维码连wifiicloudiphone自己用icloud把iPhone抹掉了.激活却不是自己的id怎么破
手机网站空间 域名服务器上存放着internet主机的 bbr asp.net主机 ion cpanel主机 godaddy优惠码 国外空间服务商 xen 地址大全 牛人与腾讯客服对话 vip购优惠 免费智能解析 支付宝扫码领红包 电信主机 流媒体加速 河南移动梦网 linode支付宝 114dns 国外网页代理 更多