模拟QQ聊天程序设计报告.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
模拟QQ聊天程序设计报告 ----网络软件创新实验报告 一. 需求分析 1.1 开发背景 在网络越来越发达的今天,人们对网络的依赖越来越多,越来越离不开网络,由此而产生的聊天工具越来越多,类似QQ、网络聊天时一类的聊天系统的发展日新月异,因此产生了制作一个类似QQ的网络聊天工具的;而且通过制作该程序还能更好的学习网络软件编程知识。 1.2 功能要求 (1)登录功能。 (2)客户可以通过服务器转发,实现一对一和多对多聊天。 (3)实现呼叫功能。(4)客户端程序应该可以实时显示目前其它用户的状态 (5)应该具有易用、美观的图形界面。 登录功能。 2客户通过服务器转发,实现聊天。 实时显示目前其它用户的状态。 6. 易用、美观的图形界面。Windows Socket编程,服务器与客户端采用了TCP/IP连接方式,在设计聊天方案时,实行将所有信息发往服务器端,再由服务器进行分别处理的思路,服务器端是所有信息的中心。 由于服务器端要保存用户信息,我们利用数据库来实现这一功能,因此首先需要建立用户信息数据库。 在客户端保存聊天纪录和用户号码这一功能的实现中,采用了文件系统设计。 在信息到来及好友上线时,通过闪动托盘图标和播放不同的音乐进行提示。 建立消息链表来保存用户接收的各种消息。 服务器及客户端的功能可划分为以下模块: 客户端: 1) 登陆功能:建立与服务器的连接并登陆,能显示登陆错误信息。 2) 界面显示:将在线好友显示在好友列表中,并实现系统托盘,加入工具栏便于操作。 3) 聊天功能:与好友聊天。 4) 聊天纪录:能保存聊天纪录,并能察看聊天纪录。 5) 信息提示:闪动托盘图标提示到来信息,并播放不同音乐来提示。 6) 其他: 用户登陆成功,将保存其号码,以便下次登陆时,不必再输入而可以直接选择,显示登陆时间。 服务器端: 向各个客户端发布系统消息。 接受来自客户端的各种信息并分别处理。 登陆信息:检查登陆信息是否正确,并向客户端返回登陆信息,如信息正确。就将在线用户发给该用户,并将该用户的状态发给各在线用户。同时在服务器端显示出来。 聊天信息:转发给消息指定的用户。 申请信息:自动分配8位用户号码,并保存该用户,同时将信息返回给客户端。 用户下线:将此用户下线消息发给各客户端,并改写用户在服务器端的状态。 程序中主要变量及类的功能说明如下: 客户端: CLoginDlg --- 登陆到服务器 COptionsDlg ---- 设置要连接的服务器的地址及端口号 CReplyDlg ---- 显示好友发送的信息 CSendMsgDlg ---- 给好友发送信息 CApplyDlg ----- 申请新的用户 CServerInfo ---- 显示服务器消息 CLogDlg ----- 显示聊天纪录 服务器端: 用户及发送信息结构体类型: struct UserInfo//---用户信息结构体 { char _QQnum[9];//号码 char _QQname[10];//昵称 int _nSex;//性别, char _Ip[20];//ip int _Port;//端口号 bool _bState;//当前状态 char _nFace[5]; //头像 } struct MsgInfo //消息结构体 { UserInfo _pSender;//发消息人 char _cRecieverNum[9];//接收人 char _msg[255];//消息内容 long _nTime;//发送时间 char _cPasswd[11];//登陆密码 int _nType; //消息类型 } 2.2 详细设计 ---见详细设计说明书。 三.工程进度 3.1 计划进度 计划进度如下: 第一阶段 3月24号--------4月4号 分析功能要求,并建立数据库 第二阶段 4月5号---------5月10号 功能具体描述,程序编写 第三阶段 5月11号 开始 修改程序中的不完善之处 并开始编写程序文档。 四 设计总结: 3.1 程序的应改进之处: 使用非模态对话框代替模态对话框。 聊天记录文件应该加密。 将不在线用户也显示出来,并能给不在线用户发送信息,在服务器端建立消息缓存。 只显示用户的好友,可以添加好友并修改信息。 3.2 个人小结 在做这次网络创新实验之前基本上还没接触过网络编程,这次实验是在边学习边实践的基础上完成的。本学期课和其他实验也很多,因此做的时间不多,做的结果不太好,与自己原来的设想有些差距。通过“计算机网络基础”自己对网络的基础知识也打下了很好的基础。这

文档评论(0)

9j6i8btlb9 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档