毕业设计—基于qt嵌入式网络聊天系统的设计

上传人:小** 文档编号:93325039 上传时间:2019-07-19 格式:DOC 页数:27 大小:720KB
返回 下载 相关 举报
毕业设计—基于qt嵌入式网络聊天系统的设计_第1页
第1页 / 共27页
毕业设计—基于qt嵌入式网络聊天系统的设计_第2页
第2页 / 共27页
毕业设计—基于qt嵌入式网络聊天系统的设计_第3页
第3页 / 共27页
毕业设计—基于qt嵌入式网络聊天系统的设计_第4页
第4页 / 共27页
毕业设计—基于qt嵌入式网络聊天系统的设计_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《毕业设计—基于qt嵌入式网络聊天系统的设计》由会员分享,可在线阅读,更多相关《毕业设计—基于qt嵌入式网络聊天系统的设计(27页珍藏版)》请在金锄头文库上搜索。

1、本科生毕业论文(设计)本科生毕业论文(设计) 题 目 A Functionalist Approach to Translation of Tourism Texts 姓 名 商广浩 学号 0812301048 院 系 物理工程学院 专 业 电子信息工程 指导教师 王艳娜 职称 讲师 2012 年 5 月 15 日 曲阜师范大学杏坛学院教务处制 目 录 摘要 3 3 关键词 3 ABSTRACT3 keyword.4 引言 4 1 QT.6 1.1 QT 的概念 .6 1.2 QT 的发展史和前景 .7 1.3 QT 的主要功能 .8 2 WINDOWS SOCKETS 网络编程的研究 4 4

2、 2.1 TCP/IP 体系结构 .5 2.2.1 TCP/IP 简介5 2.2.2 TCP/IP 的特点.5 2.2 基本套接字 5 2.3 客户机/服务器模式 .7 2.4 SOCKETS 程序设计 8 2.4.1 SOCKETS API 简介.8 2.4.2 WINDOWS SOCKETS 机制.9 3 网络通信模块分析 .11 3.1 网络通信程序设计过程.11 3.2 网络通信程序设计核心.13 3.2.1 通信设计代码分析13 3.2.2 数据传输代码分析17 3.2.3 出错处理19 4 界面模块分析 .20 4.1 服务器端界面模块分析.20 4.2 客户端界面模块分析.21

3、4.2.1 用户登陆界面分析21 4.2.2 用户聊天界面分析24 5 数据库模块分析.27 5.1 数据库的选择 .27 5.2 数据库访问方法 .27 5.3 ADO 数据库编程 .27 5.3.1 ADO 与 ADO 接口简介 .27 5.3.2 使用 ADO 操作 SQL 代码分析28 6 总结.33 6.1 体会和感想 .33 6.2 总结.33 第七章、参考书目 .34 基于 Qt 嵌入式网络聊天系统的设计 电子信息工程专业学生 商广浩 指导老师 王艳娜 内容还可以, 具体格式还需要参照学校的要求来修改。修改后再发给我 摘要摘要:本文主要介绍了如何用 QT 技术来实现一个局域网的聊

4、天软件。论文阐述了 QT 的概念,发展 历史,功能及其应用平台,以及 QT 的发展前景;本论文讨论了 linus 环境下局域网聊天程序的设 计思路和设计方法。其中网络通信部分采用流行的 TCP/IP 协议。程序采用典型的 C/S(服务器/客 户端)构架。用 socket 编程设计网络通讯。界面设计部分采用 QT 框架。数据库采用微软 SQL Server。本文最终设计了一个简易版本的聊天软件,包括登陆、退出、添加好友、消息收/发等功 能。 关键词关键词:QT,TCP/IP 通信,Sockets API,C/S architecture Qt based embedded network cha

5、t system design Student majoring in Electronic and Information Engineering shangguanghao Tutor wangyanna ABSTRACTABSTRACT :This article discusses how to design and develop a LAN chatting program in Linus environment. The network communication part depends on the popular TCP/IP protocol. Software is

6、based on C/S architecture. Network communication is developed with Socket. UI is designed with QT frame. Database is designed with SQL server. The article describes a concise chart software version, with the function of logging in/out, adding friend to list, sending/receiving message and so on. Keyw

7、ordsKeywords: QT,TCP/IP communication,Sockets API,C/S architecture 引言:近年来,随着全球信息化的不断发展,网络也在飞速发展。出于高效、快速 地处理各种事务的目的,越来越多的企业在其内部使用局域网来进行工作。在内部局 域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。 然而,随着企业规模的扩大,业务量的增加,企业内部的信息越来越私密,企业只希 望员工通过内部局域网进行沟通与交流,避免企业内部机密通过 Internet 泄露到外部。 为了解决上述矛盾,人们提出了开发局域网聊天软件的构想,通过局域网聊天软件,

8、 企业员工可以随时的进行即时消息传递,召开网络会议等,有利于提高工作效率,同 时又保护了企业内部信息的安全。 随着用户对软件功能的需求不断提高,即时通讯的产品也不断地更新换代。即时通 讯的发展不论是在基础应用方面还是在扩展应用方面都有着飞跃。为了满足用户的需 求,包括腾讯公司的聊天软件 QQ 在内,许多即时性聊天工具都推出了语音聊天、视频 聊天功能模块。本课题研究的是基于局域网的聊天室,用 VC+编写的程序,程序实现 一般的文字聊天功能,可作为某局域网的交流工具。 本系统采用基于 Socket 的方法实现局域网通信,基于 Socket 的局域网通信软件 可以为企业原有的局域网提供一种良好,安全

9、,快速的通信机制。它的实现无需对企 业原有的局域网硬件进行任何改动,具有实现成本低廉的优点,它的使用能有效地降 低局域网通信负荷,提高局域网的使用效率,可以很好地解决企业内部局域网的各种 通信需求。 基于 Socket 的局域网聊天工具很好地诠释了 Socket 通信的原理,并且在企业内 部通信、教学、讨论等应用中都具有一定的实用价值。它具有信息收发速度快,保密 性好,占用网络带宽资源低,占用服务器吞吐能力低,易于编程实现等优点3。基于 Socket 的局域网通信软件应用范围广阔,不但可以处理传统的通信需求,而且也能扩 展以适应新型的网络应用,如网络教育,数据影音传输等,拥有广泛的应用前景。

10、如今基于局域网的即时通信工具一般采用 UDP 或者 TCP 协议体系来实现 ,开发技 术已经比较成熟。UDP 的实时性比较好,但是不一定提供可靠的数据传输,TCP 可以提 供可靠的数据传输,本课题采用 TCP 完成局域网聊天室的设计。 1 QT 1.1 QT 的概念 Qt 是一个 1991 年由奇趣科技开发的跨平台 C+图形用户界面应用程序开发框架。 它既可以开发 GUI 程式,也可用于开发非 GUI 程式,比如控制台工具和服务器。Qt 是 面向对象语言,易于扩展,并且允许组件编程。2008 年,奇趣科技被诺基亚公司收购, QT 也因此成为诺基亚旗下的编程语言工具。 1.2 QT 的历史和发展

11、 * 1996 Oct KDE 组织成立 * 1998 Apr 05 Trolltech 的程序员在 5 天之内将 Netscape5.0 从 Motif 移植 到 Qt 上 * 1998 Apr 08 KDE Free Qt 基金会成立 * 1998 Jul 09 Qt 1.40 发布 * 1998 Jul 12 KDE 1.0 发布 * 1999 Mar 04 QPL1.0 发布 * 1999 Mar 12 Qt 1.44 发布 * 1999 Jun 25 Qt 2.0 发布 * 1999 Sep 13 KDE 1.1.2 发布 * 2000 Mar 20 嵌入式 Qt 发布 * 2000

12、 Sep 06 Qt 2.2 发布 * 2000 Oct 05 Qt 2.2.1 发布 * 2000 Oct 30 Qt/Embedded 开始使用 GPL 宣言 * 2000 Sep 04 Qt free edition 开始使用 GPL * 2008 Nokia 从 Trolltech 公司收购 Qt, 并增加 LGPL 的授权模式 * 2011 Digia 从 Nokia 收购了 Qt 的商业版权,从此 Nokia 负责 Qt on Mobile, Qt Commercial 由 Digia 负责 1.3 QT 的主要功能 Qt 4.6 首次包含了对 Symbian 平台的支持,并在其所

13、支持的平台中新增了 Windows 7、Apple Mac OS 10.6 (雪豹) 和即将上市的 Maemo 6。此外还为实时 操作系统 QNX 和 VxWorks 提供了网络社区支持。对 Maemo 5 的支持目前也已进 入研发阶段,其技术预览版第二版于2009 年 12 月 1 日发布。 Qt 对 X11 、X86 、ARM 及 Symbian 的支持首次为开发人员创造了使用同一代码库同时针对这多个 平台进行开发的机会。能够跨平台分享代码就意味着开发人员所开发的应用程序上 市的速度将更快,影响的设备用户群将更广。 Qt Mobility 项目下的全新 Qt API 技术预览版也同时发布。

14、这些跨平台的API 为开发人员提供了多种功能,如导 航类设备的定位功能,以及信息发送和接收、联系人和网络连接管理等。性能提 升主要包括:一个经过高度优化、重新编写的 Qt GraphicsView 渲染算法、一个 全新的 OpenGL 绘图引擎、WebKit、使用 OpenVG 对 2D 矢量图形的支持,以及 对全新 DirectFB 的支持。 2 2 SocketSocket 网络编程的研究网络编程的研究 2.1 TCP/IP 体系结构 2.2.1 TCP/IP 简介 TCP/IP 作为 Internet 的核心协议,通过近二十多年的发展已日渐成熟,并被广 泛应用于局域网和广域网中,目前已成

15、为事实上的国际标准。TCP/IP 协议集确立了 Internet 的技术基础。 TCP/IP 协议主要作用于 OSI 网络参考模型中的网络层(第 3 层) 、传输层(第 4 层)和应用层(第 7 层) 。数据链路层(第 2 层)的功能主要应用于其它协议如以太网 (Ethernet) 、ATM、帧中继(Frame Relay) ,以及多数供应商特定协议等。TCP/IP 充 分支持所有通用第 2 层协议。TCP/IP 组中的应用程序通常直接运行于传输层协议 TCP 或 UDP 上面,并不需要表示层(第 6 层)和会话层(第 5 层)的支持。 2.2.2 TCP/IP 的特点 TCP/IP 协议的核

16、心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层, 这三层通常是在操作系统内核中设计。因此用户一般不涉及。编程时,编程界面有两 种形式:一、是由内核心直接提供的系统调用;二、使用以库函数方式提供的各种函 数。前者为核内设计,后者为核外设计。用户服务要通过核外的应用程序才能设计, 所以要使用套接字(socket)来设计。 2.2 基本套接字 下面给出几个基本的套接字,这些套接字的使用贯穿了网络编程的始末,主导了数 据通信的过程。这将在以后的篇幅中会给出更详细的使用说明。 1、创建套接字socket() 功能:使用前创建一个新的套接字 格式:SOCKET PASCAL FAR socket(int af,int type,int procotol); 参数:af: 通信发生的区域 type: 要建立的套接字类型 procotol: 使用的特定协议 2、指定本地地址bind() 功能:将套接字地址与所创建的套接字号联系起来。 格式

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号