版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、指导教师:基于Qt的局域网聊天工具班级:学生:学号:论文的主要工作包括:1局域网聊天工具概述2总体设计3系统实现4系统测试5. 成果展示 近年来 , Linux系统凭借着unix系列系统所共有的快捷性 , 强大的功能性, 以及其独有的软件更新机制, 和在当今环境下无与伦比的安全性已经逐渐步入了人们的视野, 逐步作为与windows并驾齐驱的造作系统为人们的生活服务, 硬件技术的不断发展, 使得它的软件系统也拥有更多的可使用资源, 软件的规模得以飞速的扩大, 让在此对计算机的利用率更高.Linux系统不需要资金的投入就可以正常的使用, 不用像微软支付高额的版权费购买. 因此,好多企业公司都选择了
2、Linux 系统作为其日常办公,工作交流的操作系统。人们工作中需要交流和传输资料,然而,Linux局域网聊天工具在市面上又是很少数的存在,这使得在此这些Linux系统使用者在选择局域网聊天工具的时候没有什么真实的选择权。本人选题于开源的Linux局域网聊天工具,就是为了在熟练自己编程技术,深化自己对Linux系统的理解过程中,制造出一款可以真正贴合于用户需求的局域网聊天工具,同时方便政府机构、学校、企业等,部门内部的交流,提高内部信息安全性。这个程序在做完以后,将会无偿以源码形式提供在git交流社区,方便Linux学习者对其进行共同开发以及后续完善。也算是将Linux推向大众生活的尽了一份力。
3、 所以不论于个人,还是于Linux的社区,这个课题的研究都是非常有意义的。第一章:系统的背景及意义第一章:国内外局域网聊天工具研究情况目前国内外做聊天系统的公司很多,产品也琳琅满目,国内有诸如腾讯QQ、新浪UC、网易泡泡等,国外有著名的MSN(新版改名为Live Messenger)以及跨平台Gaim等。本人取最具代表性的QQ和MSN进行了一些研究,作为我开发聊天系统的准备。腾讯无疑是国内即时通讯市场的霸主,自从99年进入即时通讯领域并迅速占市场之后,其在国内用户数量始终高居榜首,即使近几年面对微软MSN的强大攻势,腾讯QQ的时常占有率依然稳步增长。腾讯的成功与其对QQ的不断创新和完善是分不开
4、的。参考了许多网络上的资料,以及自己通过观察腾讯QQ运行时的各种细节。可以确定腾讯QQ是以多服务器提供服务、服务器总控客户端、客户端之间UDP直连通信的。并且在两个客户端之间不能建立直连的情况下,才由服务器进行中转通信。 其模型如图1-1第一章:国内外局域网聊天工具研究情况与腾讯QQ不同,微软的MSN Messenger只使用了TCP作为传输层通信协议,所有客户端与服务器进行连接,然后通过与服务器的TCP连接进行中转通信。 其模型如图1-2腾讯使用的模型中,服务器主要处理客户端各种状态的控制,可以极大减轻服务器的处理压力,但其内部协议和实现复杂度都较高。而MSN Messenger所有数据都要
5、经过服务器,服务器压力可想而知(难怪平时很少见到使用MSN进行语音视频聊天的)。综合腾讯QQ和微软MSN Messenger的特点,我打算在我的系统中尝试建立服务器-客户端一体的模型,即P2P的聊天工具。第二章:总体设计系统的整体架构图 该局域网聊天工具程序既要作为服务器端,又要作为客户端,可以将它看为P2P(端到端)。其中消息传递使用UDP来实现,文件传输使用TCP来实现。 第二章:总体设计用户操作系统图如果要进行聊天,首先要获取所有登录用户的信息,这是通过在每一个用户运行该程序时发送UDP广播实现的。同时告知所有在线用户。用户离开时,也会使用UDP广播,来使系统获取到所有离开用户的信息。并
6、告知所有在线用户。发送消息时,使用UDP广播,来告知所有在线用户。在发送文件前发送其文件名,使用UDP广播来告知指定的在线用户。如果接受文件,则在接收端创建TCP客户端,然后使用TCP进行文件传输。用户拒绝接收传送来的文件信息时,使用UDP广播来告知发送端的用户,同时关闭文件的传输。保存聊天记录时,先判断messageBrowser中的信息是否为空,不为空且格式为text,则使用输出流将messageBrowser中的信息以TEXT形式导出到指定的路径下。删除聊天记录时,使用clear()函数。第二章:总体设计聊天界面活动图使用UDP广播来处理用户的登录和离开、发送消息等信息。当用户点击加粗时
7、,使用setFontWeight()函数来实现字体的粗细变换。当用户点击下划线时,使用setFontUnderline()函数来实现字体加下划线。当用户点击颜色时,调用QColorDialog(颜色对话框),选取颜色后,使用setTextColor()函数来实现字体颜色的变换。第三章:系统实现界面设计第三章:系统实现实现聊天功能信息类型、用户名、主机名是否为空为空警告加入本机IP、文本消息是否要发送的数据发送数据开始结束第三章:系统实现实现文件传输功能服务器设置为监听状态是否接收使用UDP发送信号给接收端关闭服务器开始结束创建客户端发送端接收端统计传输用时是否传输完毕第四章:系统测试第四章:系
8、统测试第五章:成果展示聊天第五章:成果展示文件传输(接受文件)第五章:成果展示文件传输(拒绝文件)第五章:成果展示保存聊天记录全文总结本次设计的主要用户对象倾向于政府机构、学校、企业等,部门内部的信息交流。由于本软件只需要局域网即可使用,管理员可将合法用户的计算机MAC地址授权使用本软件搭载的局域网,且由于P2P技术无需额外服务端的便利性,使得交流信息不会泄露给第三方,极大的提高了信息的安全性。随着网络技术和通讯技术的发展,局域网聊天工具必然还会大规模的流行下去,将会是人们生活中不可或缺的交流软件。Linux系统也因其的简单的高效,也一定会更快的走入大众的眼中,所以Linux的局域网聊天工具必然是一个很有发展前途的项目。本文设计实现了基于UDP以及TCP的局域网聊天工具的设计,主要成果为以下几点:1 利用模块化的思想,总结完成了本文的设计方案。将Linux的局域网聊天工具的设计流程详细的进行了解释。2 详细的论述了为什么Linux下的局域网聊天工具有很优良的前景和发展前途。3 熟练了自己编码能力,作为名本科生,有足够的详细项目的实际经验还是很重要的。本次
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版文化遗产保护工程承包合同示范文本2篇
- 2025年度大型商场租赁合同及租赁期限调整规范
- 二零二五年度新型房产抵押贷款咨询与评估合同3篇
- 2025版无产权储藏室买卖及艺术品展示合作协议3篇
- 2025版商场物业管理与商业纠纷调解服务合同3篇
- 上海市奉贤区2022-2023学年高三上学期一模语文试卷 附答案
- 二零二五年度车辆运输与汽车后市场服务合同2篇
- 湖州浙江湖州长兴县人民检察院编外人员招录3人笔试历年参考题库附带答案详解
- 温州浙江温州平阳县人民法院招聘编外人员笔试历年参考题库附带答案详解
- 2025年度教育机构课程开发与培训服务合同
- 中国农业银行小微企业信贷业务贷后管理办法规定
- 领导干部的情绪管理教学课件
- 初中英语-Unit2 My dream job(writing)教学课件设计
- 市政道路建设工程竣工验收质量自评报告
- 优秀支行行长推荐材料
- 中国版梅尼埃病诊断指南解读
- 创业投资管理知到章节答案智慧树2023年武汉科技大学
- 暨南大学《经济学》考博历年真题详解(宏观经济学部分)
- 药店员工教育培训资料
- eNSP简介及操作课件
- 运动技能学习与控制课件第七章运动技能的协调控制
评论
0/150
提交评论