毕业设计(论文)局域网即时通信软件设计.doc
《毕业设计(论文)局域网即时通信软件设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)局域网即时通信软件设计.doc(44页珍藏版)》请在三一办公上搜索。
1、分类号 编号烟 台 大 学毕 业 论 文(设 计)局域网即时通信软件设计LAN Immediately communitcation system 申请学位:工学学士 院 系:文经学院 专 业:通信工程 姓 名: 班 级:文通054-1 学 号: 指导老师:2009年5月25日烟台大学烟台大学毕业论文(设计)任务书院(系):文经学院姓名XXX学号毕业届别2009专业通信工程毕业论文(设计)题目局域网即时通信软件设计指导教师XXX学历工学硕士职称副教授所学专业控制科学与工程主要内容:基于Socket的局域网聊天系统是WinSock点对点通信的具体实例之一,它很好的诠释了Socket通信的原理,并
2、且在学校、企业内部通信、教学、讨论等应用中都具有一定的实用价值。它具有信息收发速度快,保密性好,占用网络带宽资源低,占用服务器吞吐能力低,易于编程实现等优点,所以局域网即时通信系统软件的开发具有很高的实用价值。基本要求:1. 完成该软件主要功能的开发设计; 2. 软件在不同计算机上均能调试通过。主要参考资料: 1 Karli Watson C#入门经典第四版.清华大学出版社,20082Christian Nagel C#高级编程第四版.清华大学出版社,20063 James Huddleston C#数据库入门经典第四版.清华大学出版社,2008进度安排:第4周末, 确定论文题目; 第7周末,
3、 提交论文提纲; 第11周, 提交论文初稿; 第15周, 提交论文终稿并准备答辩。指导教师(签字): 年 月 日院(系)意见: 教学院长(主任)(签字): 年 月 日备注:摘 要 即时通信在互联网领域的应用取得了巨大的成功,但是在学校、企业内部的应用仍远未普及。鉴于即时通信作为一项有广泛应用价值的技术框架,在逐步适应企业网络、教育网络的应用特点后,局域网即时通信必将取得和电子邮件一样的普及效果。该系统使用.NET作为开发平台、Mysql数据库存储用户信息和聊天记录,用套接字连接客户端和服务器,用数据包套接字发送消息。本系统采用C/S模式构建,由客户端和服务器端组成。客户端只要填写服务器的IP地
4、址和通信端口号,并通过所分配的账号,就可以登录和使用。服务器与Mysql数据库可部署在同一网段的任一节点上,通过接收客户端不同请求而对数据库进行增删改查的操作,这样就可以方便的进行维护并且保证了同一局域网信息的安全和网络资源的充分利用,并且最大程度的保证了数据库的安全性。使用该系统可进行一般的文字交流,查询聊天记录,及在线用户显示等功能。关键词 .NET Framework;Socket;多线程;Mysql数据库;TCP/IP协议;ADO.NETAbstract Instant messaging applications on the Internet were a great succes
5、s, but in schools, enterprises are still far from universal in application. In view of instant messaging applications as the value of a broad technical framework, and gradually adapt to the corporate network, the application of the characteristics of the education network, the LAN access to instant
6、messaging and e-mail will be the same universal effect.The introduction of the system. NET as a development platform, Mysql database storing user information and chats with a socket connection client and server, and send a message packet socket. The system uses C / S mode of construction, from the c
7、lient and server-side component. Simply fill out the client server IP address and communications port number, and through the distribution of the account, you can log in and use. Mysql database server and can be deployed in the same network segment at any node, by receiving the request of the client
8、 different additions and deletions to the database search operation,This can be convenient for maintenance and to ensure that the same local area network information security and make full use of network resources and ensure maximum safety of the database. The system can be used for general exchange
9、 of text, query chats, and online user functions.Key words .NET Framework; Socket; Thread; Mysql Database; TCP/IP; ADO.NET目 录前言11.课题及开发平台简介11.1 课题介绍11.2 开发平台简介11.3 编程语言简介(C#)21.4主要设计功能42.数据库设计及基本实现原理52.1 数据库设计52.1.1 class表简介52.1.2 user表简介52.1.2 chatlog表简介62.2 基本实现原理72.2.1 WINSOCK接口72.2.2客户机/服务器模式72.
10、3 二者的结合(DBA)83.客户端编程实现103.1 用户登陆功能103.1.1 连接服务器113.1.2 开启新线程用于接收服务器发回的消息113.1.3 向服务器发送用户名与密码信息113.2 接收服务器发回的指令123.2.1 接收发回的原始消息并还原123.2.2 分析处理服务器发回的指令123.3 登陆后界面初始化123.3.1 验证成功与进入主界面123.3.2 初始化用户列表133.3.3 显示在线用户153.4 聊天功能163.4.1 发送消息163.4.2 接收消息183.5 查询聊天记录功能193.6 用户离线223.6.1 发送离线请求223.6.2 接收用户离线消息2
11、23.7 报错功能234.服务器端编程实现244.1 启动服务244.1.1 声明变量244.1.2 显示服务器IP244.1.3 启动服务244.1.4 监听客户端请求254.2 接收客户端请求264.3 根据客户端不同请求做出操作264.3.1 连接请求274.3.2 即时聊天请求294.3.3 查询聊天记录请求304.3.4 用户离线请求304.4 即时发送“错误”指令315.结论326.致谢33参考文献34前言由于因特网的迅速流行,越来越多的应用程序具备了在网上与其它程序通信的能力。从WIN95开始微软把网络功能融进了它的操作系统,使得应用程序网络通信能力更为普及。因此,微软的TCP/
12、IP协议也就成为网络应用程序基于的首选协议。一般采用TCP/IP协议的应用程序只实现了单用户与服务器间点对点的连接,而本文在VC6.0的环境下,运用了了多线程以及共享数据结构技术,不仅实现了多用户与服务器间的连接,而且解决了多用户间信息互发问题-依靠服务器的转发功能。并且,数据库技术的引入,使得大数据保存成为了可能,并可在任意客户端查询聊天记录。借助微软Visual Studio2008 .NET开发平台,与其自带的ADO.NET组件,使开发效率大大提速。1.课题及开发平台简介1.1 课题介绍局域网即时通信,不同于大家熟知的MSN这样的基于互联网的即时通信,而是基于学校教育网、企业内部局域网使
13、用的即时通信。即时通信在互联网领域的应用取得了巨大的成功,但是在学校、企业等内部网络的应用仍远未普及。传输速度、总体投入及广域网无法比肩的安全性,注定了局域网层出不穷的潜力,在学校、企业内部更是如此。在这种前提下,一款可以即时收发消息用来收发通知,可查询历史消息的通信软件的需求成为了必然。正是在这种前提下,结合实际情况,我决定开发一套局域网即时通信软件设计软件。1.2 开发平台简介.NET Framework 是微软的几个开发团队一起努力发展的成果,最主要用来产生一个可以用来快速开发、部署网站服务及应用程序的开发平台。作为微软公司继WindowsDNA以来的新的开发平台。.Net Framew
14、ork是以一种类似于Java系统的虚拟机方式运行和管理的编程平台,通过CLR为基础,支持多种语言(C#、VB.NET、C+、Python等)的开发。C#是一种安全的、稳定的、简单的,由C和C+衍生出来的面向对象的编程语言。它在继承C和C+强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C+的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。 在Visual Studio 2008的C+语言当中,MFC可以支持Vista的通用控件。Visual Studio 2008还支
15、持智能感应,除此以外,对于AJAX引入了很多扩展控件,从而可以快速开发ASP.NET AJAX的应用。新的Vista SDK中包含大量的非托管API。UAC(用户访问控制)是Vista的一种访问控制机制,主要是防止病毒对系统的破坏。使用Visual Studio 2008可以高效开发Windows应用。设计器中可以实时反映变更,XAML中智能感知功能可以提高开发效率。同时Visual Studio 2008支持项目模板、调试器和部署程序。使用Expression交互式设计器可以无缝集成设计人员与开发人员的工作流程。LINQ是一种用来进行数据访问的编程模型,使得.NET语言可以直接支持数据查询。
16、LINQ的目标是降低访问数据的复杂度。LINQ可以用统一的方法访问不同类型的数据,可以将数据作为对象使用,能够更好地与编程模型集成,可以在Visual Studio 中进行智能提示。1.3 编程语言简介(C#)1.面向对象的可视化编程方法:用传统程序设计语言设计程序时,大都是通过编写程序代码来实现用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察,这很麻烦,大大影响了软件开发的效率。C#则是应用的面向对象的程序设计方法(OOP),提供了可视化的设计方法,它把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。开发人员不必再为界面设计而编写大
17、量程序代码,也不需要通过一遍遍编译来修改不满意之处了。只要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性,就可以轻松完成任务了。C#会自动产生界面设计代码,程序设计人员不必再手工编写实现程序功能的那些烦人的代码,从而可以大大提高程序设计的效率。2.结构化程序设计语言:C#是在C/C+语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。C#语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。C#是面向对象型语言,在输入代码的同时,解释系统将高级语言分
18、解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计C#程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离C#环境,直接在Windows环境下运行。3.事件驱动编程机制:C#通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击”(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。在用C#设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发某
19、个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。4.访问数据库功能:C#具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理Microsoft SQL Server 2005 Express格式的数据库,并提供了强大的数据存储和检索功能。同时,C#还能直接编辑和访问其他外部数据库,如:DATABASE,FoxPro,Paradox等,这些数据库格式都可以用C# 编辑和处理。C#提供开放式数据连接,即ADO.NET功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQL Server,Orac
20、le等。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,还提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,可以在分布式环境中快速而有效地实现客户/服务器(client/server)方案。5.动态数据交换(DDE)功能:利用动态数据交换(Dynamic Data Exchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。当原始数据变化时,可以自动更新链接的数据。C#提供了动态数据交换的编程技术,可以在应用程序中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 局域网 即时 通信 软件设计
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-3982126.html