用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业设计下载计算机毕业设计c#

基于C#的局域网聊天软件毕业设计

联系方式:点击这里给我发消息QQ212181988
官方主页:www.biye114.com
图片预览: ;论坛转帖
插件情况:
售后服务:请联系客服QQ:212181988
一键分享拿折扣:
  • 好的评价 如果您觉得此软件好,就请您
      0%(0)
  • 差的评价 如果您觉得此软件差,就请您
      0%(0)

软件简介

  目 录

摘 要 I

Abstract II

1 绪 论 1
1.1 课题研究的背景和意义 1
1.1.1 课题背景 1
1.1.2 课题研究的国内外情况 1
1.1.3 课题研究的内容及意义 2
1.2相关技术概述 3
1.2.1 C/S结构的介绍 3
1.2.2 SQL Server 2008 4
1.2.3 C#简介 4
2 可行性研究 6
2.1可行性分析 6
2.1.1技术可行性 6
2.1.2经济可行性 6
2.1.3操作可行性 6

3 需求分析 7
3.1需求分析 7
3.2界面功能分析 8

4 数据库设计 10

5 详细设计 11
5.1 服务器 11
5.1.1返回注册信息 11
5.1.1用户登录验证 11
5.1.1刷新用户信息 12
5.2客户端 13
5.2.1注册 13
5.2.2登录 13
5.2.3添加好友 14
5.2.4消息发送与接收 14
5.2.5视频聊天 15
5.2.6文件发送与接收 15

6 主要功能模块的具体实现 17
6.1文字聊天模块功能具体实现 17
6.2文件传输模块功能的具体实现 18
6.3视频模块功能的具体实现 21

7 系统的综合测试与分析 23
7.1用户注册 23
7.2用户登录 24
7.3添加好友成功界面表 25
7.4 好友文本信息发送 27
7.5 好友文件发送与接收 28
7.6 好友视频聊天 30

结论 33

致谢 34

参考文献 35

文献综述 37

摘 要
随着互联网的广泛普及,越来越多的人们开始通过网络来交流。本文就详细介绍了一款聊天软件的设计与实现过程。此聊天软件采用c#语言编写,使用VS2010作为开发工具,应用了面向对象的设计理念和原则。该系统采用c/s结构。在客户端与客户端之间、客户端与服务器之间通过TCP/IP发送消息。在客户端与服务端的实现过程中大量的采用了多线程,这样可以让客户端和服务端更加有效的完成所需服务。此外,后台数据库采用的是Sqlsever2008数据库,其用来保存用户的相关信息。一旦数据库与服务器连接建立成功,服务端就可以对数据库的数据进行访问操作。此聊天软件主要实现了文件传输、文本聊天、视频聊天、用户注册、用户添加好友等一系列功能。

关键词:c# 数据库 多线程 文件传输 音频 视频

Abstract
With the widespread popularity of the Internet, More and more people began to communicate with each other through the Network ,this article describes the design and implementation of a chat software.
This chat software is written in c# language, using VS2010 as the development tool, and it has applied the object oriented design concept and principle.The system uses c/s structure. Between the client and the client, between the client and the server through the TCP/IP transfer message.In the process of the client and server, a lot of use of the multi-threaded, so that the client and server more effective completion of the required services.In addition, the background database uses mySql database, which is used to save the user's information. Once the database is connected to the server, the server can access the database data.This chat software mainly achieved file transfer, text chat, video chat, user registration, users add friends and a series of features。
Keywords: C# database ;multi-threaded ;file transfer; audio ;video
1绪 论

1.1 课题研究的背景和意义
1.1.1课题背景
近年来,随着全球信息化进程的不断发展,网络也在飞速发展。出于高效、快速地处理各种事务的目的,越来越多的企业在其内部使用局域网来进行工作。在内部局域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。然而,随着企业规模的扩大,业务量的增加,企业内部的信息越来越私密,企业只希望员工通过内部局域网进行沟通与交流,避免企业内部机密通过Internet泄露到外部。为了解决上述矛盾,人们提出了开发局域网聊天软件的构想,通过局域网聊天软件,企业员工可以随时的进行即时消息传递,召开网络会议等,有利于提高工作消息效率,同时又保护了企业内部信息的安全性。 本系统采用基于TCP/IP的局域网通信工具的设计与实现的方法。基于TCP/IP的局域网通信软件可以为企业原有的局域网提供一种良好,安全,快速的通信机制。它的实现无需对企业原有的局域网硬件进行任何改动,具有实现成本低廉的优点,它的使用能有效地降低局域网通信负荷,提高局域网的使用效率,可以很好地解决企业内部局域网的各种通信需求。
1.1.2课题研究的国内外情况
中国的大部分网络用户都拥有自己的QQ号码。腾讯计算机系统有限公司成立于1998年11月。1999年2月,腾讯自主开发了基于Internet的即时通信网络工具——腾讯即时通信Tencent Instant Messenger,简称TIM或腾讯QQ。腾讯QQ经过三年时间的发展,到2002年,其用户群成为中国最大的互联网注册用户群,注册用户达到1亿6000万,其中活跃用户总数超过5000万。自此腾讯QQ成为中国最大的即时通信服务提供商。腾讯公司是中国最早也是目前中国市场上最大的本土互联网即时通信软件开发商。公司成立7年多以来,一直以追求卓越的技术为导向,始终处于稳健、高速发展的状态。腾讯QQ超过4.3亿的注册用户群体现了网络用户对腾讯QQ这一聊天工具的广泛应用。在当今市场经济高速发展的前提下,腾讯QQ也在不断自我完善,渐渐地演变为一个人性化、市场化的多功能的聊天工具软件,它可以给网络聊天用户带来越来越多的人性化服务:从原来单一的文字聊天过渡到集语音、视频、文件传输等多功能于一身的聊天软件。
ICQ和MSN是在国外比较盛行的即时聊天工具,腾讯QQ的开发对MSN和ICQ都进行了借鉴。ICQ是I Seek You(我找你)的缩写,最初是一家以色列公司开发出来的免费软件,中文名称目前可以称之为“网络呼叫器”,它在全球拥有超过4000万的用户。事实上这种软件最主要的功能就是让用户知道网络上的朋友现在有没有上线(前提是对方也有安装ICQ),然后可以互送Messages(消息)交谈或是交换档案等等,比电子邮件更具即时性。正如一位ICQ软件的最初程序设计员所说:“当你登录因特网之后,你周围都是些自己熟悉的人,而且,你还可以和他们分享这种体验,这的确是一件令人激动的事情。”
MSN是微软推出的聊天软件,是一套类似ICQ的网上即时通讯软件,它以最简单的方式为用户提供强有力的即时消息支持,同时能使Microsoft Outlook Express(R) 和MSN 变得更简单易用。MSN Messenger Service 还可使用户间的联机交谈变得更加轻松愉快,了解谁在联机以及查看用户何时联机并与其交换即时消息。用户间可以进行单独的聊天,或者在同一个对话窗口中与多达四个的联系人进行聊天。自动的输入指示器可让用户知道何时联系人正在输入答复,还可以进行全球电话呼叫——以非常低的费用呼叫世界的任何地方。用户可以选择所要使用的电话服务提供商,从服务提供商的列表中选择最适合的提供商。用交谈取代键盘输入,使用计算机上的话筒和扬声器就可以和位于世界各地的朋友进行交谈,甚至可以呼叫联系人将文本消息发送到联系人的移动电话和传呼机上(注:此特性仅适用于美国和加拿大),而进入“聊天室”结识新朋友,或加入与名人聊天,此特性在所有地区都适用。用户可以使用 MSN Messenger 与朋友交换照片、喜爱的音乐或任何其他文件,也可以监视新的电子邮件并查看用户有多少新的电子邮件。MSN Messenger能在收到新的邮件时通知用户,还能邀请联系人进行联机兼容游戏。
1.1.3课题研究的内容及意义
随着计算机技术和网络技术的飞速发展,网上聊天已经成为人们相互交流的一种方式。本课题设计并实现一个局域网聊天软件。主要功能完成局域网终端使用者的网络沟通服务,使用者可以通过安装了局域网聊天系统客户端的终端机进行两人之间的聊天,包括文字传送,文件发送及视频聊天等功能。局域网聊天工具,是在局域网内部使用的,用户之间用来交流的一个工具,一般都具有文本聊天和文件传输功能。局域网聊天软件因其使用简单,系统资源消耗少等优点,成为各企事业单位等的局域网内广泛应用的软件之一。
1.2相关技术概述
1.2.1 C/S结构的介绍
C/S(client/server)结构,即被广为熟知和使用的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到client端和server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是client/server形式的两层结构,由于现在的软件应用系统正在向分布式的web应用发展,web和client/server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部用户和外部用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。传统的c/s体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是client端还是server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,c/s结构的软件需要针对不同的操作系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高,效率低。
C/S架构软件的优势与劣势:
(1)应用服务器运行数据负荷较轻。最简单的c/s体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。
(2)数据的储存管理功能较为透明。在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。在c/s体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。
(3)c/s架构的劣势是高昂的维护成本且投资大。首先,采用c/s架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。 
1.2.2 SQL Server 2008
SQL Server 2008是由Microsoft公司发布发的一个典型关系型数据库管理系统,拥有强大的功能,简便安全的操作,为用户提供一个完整的数据管理和分析解决方案。数据库具有数据结构化、数据共享性高,冗余度低,易扩充、数据独立性高、由DBMS统一管理和控制等特点。但是SQL Server 2008没有丝毫开放性,在用户连接多时性能会变得很差,并且不稳定。
但是SQL Server 2008相对其他数据库而言,减少安全攻击,全面保护用户信息,并且确保业务连续性,同时提供可预测响应,他最大限度减少管理监视,继承任何数据,提供数据的相关信息。对于使用者来说,能够大量的存储数据,对数据进行一系列的操作。
1.2.3 C#简介
C#(Csharp)是一种最新的、面向对象的编程语言,它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序。Microsoft .NET提供了一系列的工具和服务来最大程度地开发、利用计算与通讯领域。C#面向对象的卓越设计使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。最重要的是,C#使得C++程序员可以高效率地开发程序,而绝不损失C/C++原有的强大功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快地转向C#。
C#语言是允许类型定义、扩展的元数据,这些元数据可以应用于任何对象。项目构建者可以定义领域特有的属性并把他们应用于任何语言元素类、接口等等。然后,开发人员可以编程检查每个元素的属性。这样,很多工作都变得更加方便:譬如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者只是创建一份基于对象的领域特有属性的报表。定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。
在C#中,每个对象都自动生成为一个COM对象。开发者不再需要显式的实现IUnknown和其他COM接口.这些功能都是内置的、类似的,C#可以调用现有的COM对象,无论它是由什么语言编写的。C#包含了一个特殊的功能:使程序可以调用任何纯API。在一段特别标记的代码中,开发者可以使用指针和传统C/C++特性,如手工的内存管理和指针运算。这是其相对于其它环境的极大优势。这意味着C#程序员可以在原有的C/C++代码的基础上编写程序,而不是彻底放弃那些代码。

2 可行性研究

2.1可行性分析
2.1.1技术可行性
根据应用程序开发所需的技术和实现方式的约束条件分析可得出,基于C/S模式的局域网聊天软件是一个给用户互相交流以及文件资源共享的平台,如今计算机硬件已经发展迅猛,各类局域网中的计算机设备完全可以实现软件的功能需求,所以在局域网下实现一个简易的聊天软件在技术上完全可行。
在硬件方面,CPU:主频1.8GHZ或更高,内存512MB或更高,硬盘80G或更高,网络适配器:支持自适应以太网卡,显示器:支持256色显示器即可,软件对硬件要求相对很低,所以在硬件支持上完全可行。
在软件方面,由于是在win7平台下开发,所以推荐使用win7环境运行系统,数据库需要SQL2008或更高,安装基础VS软件包。所使用的开发工具是VS2010,是一个十分成熟的开发工具,在很多不同平台上都有很好的兼容性,而windows7也是windows操作系统中一个比较稳定的平台,在其上开发的软件也有很好的兼容性,所以无论是在安全性,可靠性,可用性,还是可扩展性等方面都是完全能够满足的的。因而软件方面技术是可行的。
2.1.2经济可行性
对于本次课题的设计,经济上需要一台能够安装并能使用Microsoft Visual Studio 2010软件的Windows 7系统的笔记本电脑,以及在测试时需要借用同学的笔记本电脑。程序所需要的开发软件Microsoft Visual Studio 2010等属于免费软件,大大节省了开发成本。开发过程中需要的相关资料和书籍,不需要购买,只需在图书馆中借阅相关资料或者从网上搜集资料。后期的维护成本都在个人可控制能力的范围以内;加上所用的开发软件和硬件都是现成的,因此经济方面是可行的。
2.1.3操作可行性
该系统是个比较小的系统,因此对于软件以及硬件的要求都不高。现在的电脑基本上都能满足其操作要求。在界面设计上也非常简单,用户操作上都是根据人的日常行为习惯来设计的一些操作按键。
3 需求分析
3.1需求分析
此聊天软件系统是模拟现今国内最为流行的即时性通讯工具QQ而设计的,能够实现注册、登录、添加好友、文字聊天、文件传输、音频视频聊天等功能。该聊天软件系统是采用C/S结构,即客户端与服务器端的结构体系。基于对该聊天软件功能的分析,本文分别对客户端与服务器端进行了设计。
该聊天软件服务器端的功能是实现对客户端提交的用户信息进行处理。服务器设计内容包含:信息接收、注册、登录、刷新、更新、添加好友等。“信息接收”是提供服务器接受客户端发送信息的功能;“注册”是服务器端接受到用户的注册信息请求后,将请求信息写入到数据库,为用户的注册提了相关服务;“登录”是服务器通过验证登录信息来实现相关的服务;“刷新”是对服务器的更新数据每过一段时间进行一次刷新,来显示用户当前在服务器的信息状况,如在线状态等;“更新”是服务器对用户在数据库中信息进行相关的操作;“用户退出处理”是服务器在用户退出聊天系统后作出的相关处理工作;“好友添加”是服务器对添加的好友信息进行处理等相关操作。
客户端即用户使用的应用程序端。用户通过该聊天软件的客户端来实现网上聊天的相关功能:注册、登录、添加好友、文字聊天、文件传输、音频视频聊天等。注册功能是提交用户相关信息以及获得一个属于自己登录该聊天软件系统的用户ID号;登录功能是实现验证用户信息与合法使用该聊天软件系统的权限;添加好友是实现用户之间好友添加的操作;添加好友成功后,就可以与好友之间开始文字聊天、文件传输、音频视频聊天等功能。

下载地址

点击此处→注册会员上传设计赚钱
以上是大纲和介绍,如需要完整的资料请在线购买.

软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 本站所有资料均已审核通过,内容原创保密,标准格式,质量保证
* 无需注册,点击在线购买后即可获取该套毕业设计(论文)完整
* 支付后请联系在线客服QQ:212181988发送资料
  • 官方微信