聊天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回车

UCloud 618活动:香港云服务器月付13元起;最高可购3年,AMD/Intel系列

ucloud6.18推出全球大促活动,针对新老用户(个人/企业)提供云服务器促销产品,其中最低配快杰云服务器月付5元起,中国香港快杰型云服务器月付13元起,最高可购3年,有AMD/Intel系列。当然这都是针对新用户的优惠。注意,UCloud全球有31个数据中心,29条专线,覆盖五大洲,基本上你想要的都能找到。注意:以上ucloud 618优惠都是新用户专享,老用户就随便看看!点击进入:uclou...

EtherNetservers年付仅10美元,美国洛杉矶VPS/1核512M内存10GB硬盘1Gpbs端口月流量500GB/2个IP

EtherNetservers是一家成立于2013年的英国主机商,提供基于OpenVZ和KVM架构的VPS,数据中心包括美国洛杉矶、新泽西和杰克逊维尔,商家支持使用PayPal、支付宝等付款方式,提供 60 天退款保证,这在IDC行业来说很少见,也可见商家对自家产品很有信心。有需要便宜VPS、多IP VPS的朋友可以关注一下。优惠码SUMMER-VPS-15 (终身 15% 的折扣)SUMMER-...

Megalayer(月599元)限时8月香港和美国大带宽服务器

第一、香港服务器机房这里我们可以看到有提供四个大带宽方案,是全向带宽和国际带宽,前者适合除了中国大陆地区的全网地区用户可以用,后者国际带宽适合欧美地区业务。如果我们是需要大陆地区速度CN2优化的,那就需要选择常规的优化带宽方案,参考这里。CPU内存硬盘带宽流量价格选择E3-12308GB240GB SSD50M全向带宽不限999元/月方案选择E3-12308GB240GB SSD100M国际带宽不...

如何删除qq聊天记录为你推荐
santeeset微信群里正在组织赌博路由器itunes支持ipad支持ipad更新iphoneeaccelerator开启eAccelerator内存优化就各种毛病,DZ到底用哪个内存优化比较好。。。ms17-010win10华为 slatl10是什么型号google图片搜索如何使用google图片搜索引擎?icloudiphone自己用icloud把iPhone抹掉了.激活却不是自己的id怎么破
新加坡虚拟主机 过期域名查询 日本vps 北京vps 企业域名备案 yardvps 紫田 哈喽图床 mobaxterm 鲜果阅读 debian源 太原联通测速平台 web服务器的架设 北京双线 免费活动 流量计费 789 免费网络 netvigator mteam 更多