



已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
延边大学本科毕业论文用socket实现局域网办公助理 内 容 摘 要现代社会科技在不断的更新,科学技术的发展日新月异,为了满足人们使用现代化通讯手段的要求我们开发了一款“局域网通讯软件”,此款软件是专用于局域网内交流信息的软件。它主要实现了五种功能:网络设置,发送短信,发送通知,网上会议,以及文件传输功能。C#是微软公司基于Visual Studio.NET平台量身订制的新一代程序开发语言。使用C#开发基于DOTNET的应用程序,具有良好的安全性和跨平台性。正是因为DOTNET平台和C#开发语言的特点,我们选择用C# 语言进行开发。本软件采用了UDP协议与多点广播;其中多点广播用于发送短信功能;UDP协议用于发布通知、网上会议和文件传输功能。此外,本软件还采用了多线程技术,使各个功能都能够并发执行。同时本软件还省去了专用服务器;将服务器的功能嵌入到软件中,使软件本身不仅具有客户端的功能,而且具有服务器的功能。因此使用时无需登陆服务器,有利于信息的保护。关键词: 局域网通讯, C#, Visual Studio.NET ,UDP协议,AbstractThe technology of modern society refresh ceaselessly, in order to meet peoples need of communication, we exploder a new software, its name is “the software of communication in the LAN”. It is specially to communicate with others in the LAN. Its functions are: network settings, message sending, notice sending, network meetings, and document sending.C# is a new language of the Microsoft that base on the visual studio .NET. It has good security Just because of the specialty of C# and DOTNET, we choose it to exploder the software. This software adopts the UDP protocol, and so on, its functions can execute at the same time. Also, it economize the special server, the servers function was embed into the software, it made itself not only can be seen as the server, but also can be seen as the client. Therefore, we have no need to land on the serve, it do good to protecting the message.Keywords: LAN communication , C#, Visual Studio.NET ,UDP protocol 目 录第一章 绪论1.1 c#功能简介51.2 Visual Studio.NET编程环境简介7第二章 需求分析92.1 供求分析92.2 发展前景9第三章 总体设计103.1 系统功能模块图103.2 系统功能模块说明103.3 系统的总体设计10第四章 详细设计124.1获取网络设置部分详解134.2发送短信设置部分详解144.3发布通知设置部分详解144.4网上会议设置部分详解154.5文件传输设置部分详解16第四章 测试报告17第五章 总结18附录:参考文献19第一章 绪 论 1.1 C# 功能简介C#是微软公司基于.NET平台量身订制的新一代程序开发语言。使用C#开发基于.NET的应用程序,具有良好的安全性和跨平台性。C#用途广泛,可以开发Windows、ASP.NET、Web服务,甚至使Windows底层的各种不同类型的应用程序。C#的程序可以通过XML交换数据信息。因为XML是纯文本的信息,这就为通过C#的开发的应用程序的跨平台性能提供了强大的保障。C#的程序运行方式也是独特的,其应用程序完全在.NET平台的管理下运行,这就大大地增加了应用程序完全在.NET平台的管理下运行,这就大大增加了应用程序的稳定性和安全性。总体看来,C#具有与 Visual Basic 一样简单的编程方法,与Visual C+ 一样强大的功能,并且其跨平台性能要优于Java。在使用Java开发的程序中,Bean之间可以进行数据交互,但是任何一个Bean不能和其他语言开发的程序交换数据。现在C#填补了这一空白,由于其采用XML作为交换数据的格式,所以C#就具有了用Java、COM等其他语言编写的组件。C#语言是微软公司为它的Microsoft.NET计划推出的核心编程语言。该语言不仅继承Visual Basic、Visual C+ 语言的优点,还几乎综合了目前所有编程语言的优点,并结合Internet发展的需要,增加了丰富的新特性并增强了功能。C#语言面向实体的设计,可以用来构建服务于高水平的商务目标的组件。C#语言的组成部分使用简单得C#语言结构体,并且能被转化成Web服务,允许人们通过Internet调用任何操作系统上运行的任何语言。C#作为一种编程语言,具有以下几个重要特点: l 简单l 现代l 面向对象l 类型安全l 版本可控l 兼容l 灵活简单C#具有C+所没有的一个优势就是学习简单。该语言首要的目标就是简单。在C#中没有C+中流行的指针。在C+中,有:、.、和-操作符,它们用于名字空间、成员和引用。对于新手来说,操作符至今仍是学习的一道难关。C#弃用其它操作符,仅使用单个操作符.。并且不必记住基于不同处理器架构的隐含的类型,甚至各种整型的变化范围。C#使用统一的类型系统,摒弃了C+多变的类型系统。这种系统允许您把各种类型作为一个对象查看,它是一个原始类型还是一个full-blown类。C#同时也解决了存在于C+中已经有些年头的多余东西。这种多余包括常数预定义,不同字符类型等。鉴于多余表单已经从该语言中消失,故一般在C#中都可以使用表单了。现代很多用C+可以实现或者很费力实现的功能,在C#中不过是一部分基本的功能而已。对于企业级的编程语言来说,新增的金融数据类型很受欢迎。一种新的十进制的数据类型,专用于金融计算方面。如果不喜欢这种现成简单的类型,根据应用程序的特殊需求,可以很容易地创建出新的一种数据类型。运行时NGWS提供了一个垃圾收集器,负责C#程序中的内存管理。因内存和应用程序都受到管理,所以很必要增强类型安全,以确保应用的稳定性。对于C+程序员,异常处理的确不是新的东西,但它是C#的主要功能。C#的异常处理与C+的不同点在于它是交叉语言的(运行时的另一个功能)。现在由于C#使用了基于异常的健壮的出错处理,你就可以轻松的应对各种异常情况的发生了。对于现代的应用程序,安全是首要的,C#也不会例外。它提供了元数据语法,用于声明下述NGWS安全模式的能力和许可。面向对象C#支持所有关键的面向对象的概念,如封装、继承和多态性。完整的C#类模式构建在NGWS运行时的虚拟对象系统(VOS,VirtualObjectSystem)的上层,对象模式只是基础的一部分,不再是编程语言的一部分。所有的东西都封装在类中,包括事例成员(通过类的事例-对象可以访问)或都静态成员(通过数据类型)。这些使C#代码更加易读且有助于减少潜在的命名冲突。定义类中的方法默认是非虚拟的(它们不能被派生类改写)。主要特点是,这样会消除由于偶尔改写方法而导致另外一些原代码出错。要改写方法,必须具有显式的虚拟标志。这种行为不但缩减了虚拟函数表,而且还确保正确版本的控制。使用C+编写类,您可以使用访问权限给类成员设置不同的访问等级。C#同样支持private、protected和public三种访问权限,而且还增加了第四种:internal。C#仅允许一个基类,因此可以解决多基类的麻烦。如果需要多重继承,可以运用接口。一个可能出现的问题:在C#中不存在指针,如何模仿它?这个问题的答案很有代表性,它提供了对NGWS运行时事件模式的支持。类型安全C#实施最严格的类型安全,以保护自己及垃圾收集器。所以必须遵守C#中一些相关变量的规则:不能使用没有初始化的变量。对于对象的成员变量,编译器会负责清零。而局部变量,则由操作人员来负责清零。当使用一个没有初始化的变量时,编译器会教你怎么做。优点是能够避免由于使用不经初始化的变量计算结果而导致的错误。C#取消了不安全的类型转换。不能把一个整型强制转换成一个引用类型(如对象),而当向下转换时,C#验证这种转换是正确的。(也就是说,派生类真的是从向下转换的那个类派生出来的。)边界检查是C#的一部分。再也不会出现这种情况:当数组实际只定义了n-1个元素,却超额地使用了n个元素。算术运算有可能溢出终值数据类型的范围。C#允许在语句级或应用程序级检测这些运算。在允许检测溢出的情况下,当溢出发生时将会抛出一个异常。在C#中,被传递的引用参数类型是安全的。版本可控用C#写组件可以看到,NGWSruntime将对您所写的应用程序提供版本支持。C#可以最好地支持版本控制。尽管C#不能确保正确的版本控制,但是它可以为程序员保证版本控制成为可能。有这种支持,一个开发人员就可以确保当他的类库升级时,仍保留着对已存在的客户应用程序的二进制兼容。兼容C#并没有存在于一个封闭的世界中。它允许使用最先进的NGWS的通用语言规定 (CommonLanguageSpecification,简写为CLS)访问不同的API。CLS规定了一个标准,用于符合这种标准的语言的内部之间的操作。为了加强CLS的编译,C#编译器检测所有的公共出口编译,并在通不过时列出错误。当然,您也想能够访问旧一点的COM对象。NGWS运行时提供对COM透明的访问。C#支持OLE自动化,而没有烦琐的细节。最后,C#允许使用用C原型的API进行内部操作。可以从您的应用程序访问任何DLL中的入口点(有C的原型)。用于访问原始API的功能称作平台调用服务。灵活尽管C#代码的缺省状态类型是安全的,但是可以声明一些类或者仅声明类的方法是非安全类型的。这样的声明允许您使用指针、结构,静态地分配数组。安全码和非安全码都运行在同一个管理空间,这样暗示着当从安全码调用非安全码时不会陷入列集。C#语言从C和C+演变而来,它是给那些愿意牺牲C+一点底层功能,以获得更方便和更产品化的企业开发人员而创造的。C#现代、简单、面向对象和类型安全。尽管它借鉴了C和C+的许多东西,但是在一些诸如名字空间、类、方法和异常处理等特定领域,它们之间还存在着巨大的差异。C#为您提供了方便的功能,如垃圾收集、类型安全、版本控制,等等。仅有的定了。但是,如果需要指针,仍可以通过非安全码使用它们,而且当调用非安全码时,不能含有列集。1.2 Visual Studio.NET编程环境简介Visual Studio.NET是微软新推出的一面向网络,支持各种用户终端的开发平台环境,它将会带来一种软件革命。DOTNET实现“3A”(Any Time ,Any Where, Any Device)即使用不同的开发语言,在不同的目标设备上操作,它是一种能够横亘于整个网络,跨越各种操作系统和终端设备之上的操作与平台。它作为快速创建和集成 XML Web Services及其Windows应用程序,Web应用程序的单一综合工具,Visual Studio .NET 在改善操作的同时极大地提高了开发人员的效率,并为使用它的企业带来了新的商机。Visual Studio.NET是唯一从开始就为 XML Web Services而创建的开发环境。在XML Web Services的支持下,无论是Windows应用程序还是Web应用程序都能通过 Internet 沟通和共享数据,拥有了XML Web Services平台,企业的业务在Internet 真正体现了集成和传送它们的核心商业价值。Visual Studio.NET 和 XML Web Services提供简单、灵活、基于标准的模型,开发人员即可以在其上编写新的代码,也可以利用现有的代码创建应用程序,这些工作均与平台、编程语言或对象模型无关。利用集成功能,利用组织内的现有投资,企业使用Visual Studio.NET简化了与客户和贸易伙伴的业务处理。开放式结构使开发人员能够轻松使用任何面向 Microsoft.NET 框架的语言并发扬他的开发技能,而无需进行昂贵而大量的再培训。Visual Studio.NET 基于最新的 Microsoft Windows 服务器平台而创建,因此内置了应用程序的可缩放性、可靠性和安全性,简化了生成环境中应用程序的管理和部署并降低了应用程序生命周期的总体成本。使用Visual Studio.NET极大的提高了开发人员的效率,Visual Studio .NET 继续为开发人员的效率制定基准。有了面向所有语言(包括 Microsoft Visual Basic .NET、Microsoft Visual C+ .NET 和 Microsoft Visual C# .NET)的统一的集成开发环境 (IDE),开发组织可利用公共工具箱、调试器和任务窗口,大大缩短开发人员的学习曲线并确保开发人员始终可以选择最适合他们的任务和专业知识的语言。Visual Studio .NET 利用智能感知结束语句和自动的语法错误检查,在代码有误时通知开发人员并使开发人员能够直接洞察类层次结构和 API。开发人员可使用解决方案资源管理器,在项目之间方便地重复使用代码,甚至还可以创建最有效地满足其业务需求的多语言解决方案。同样,借助于可完全扩展的 IDE,开发人员可受益于绝佳的第三方外接程序和组件供应商社区 利用组件和控件帮助他们进一步自定义和扩展环境以满足其需求。使用 Visual Studio.NET 应用程序向导、项目模板和示例源代码,只需很少的前期投资,就可创建 Windows、Web和其他设备的应用程序。动态帮助和 Microsoft Developer Network提供基于当前任务和编程语言的帮助,确保开发人员始终能理解有关 Microsoft .NET 平台或其所选语言的信息。Visual Studio 宏与 Office 中的 Microsoft Visual Basic for Applications 宏类似,它能够在 IDE 内自动执行例行任务,进一步提高了 Visual Studio.NET开发人员的总体效率。Visual C#.NET 是Microsoft的新型语言,它可提高C和C+开发人员的效率。Visual C#.NET 对具有属性、方法、索引器、特性、版本和事件的组件提供一流的支持,并同时对.NET 平台提供强有力的和有效的支持。 第二章 需求分析 2.1 供求分析现代社会科技在不断的更新,科学技术的发展日新月异,人们的沟通交流方式也发生了很大的变化,然而我们的生活中很多交流模式还停留在原始阶段,这就需要我们用新的技术手段还改变他们,使他们的脚步跟上时代的步伐。例如在原始的办公模式下,当一个办公室的两位职员需要进行交流的时候,他们还需离开自己的座位进行交谈,并且很可能因此对别人的工作造成影响。当需要展开会议时,就需要专人通知,浪费了人力,又需要占用会议室。当需要资源共享时,即使是简单的资源共享,也存在着很大的资源隐患,有的甚至还在使用着纸介质。因此为了解决以上的问题,我们开发了一款新的软件办公助理软件。正是因为DOTNET平台和C#开发语言的特点,我们选择用C# 语言进行开发。本软件采用了UDP协议与多点广播,其中多点广播用于发送短信功能;UDP协议用于发布通知、网上会议和文件传输功能。此外,本软件还采用了多线程技术,使各个功能都能够并发执行。局域网通讯软件的主要用途是用在局域网内的计算机上。它主要实现以下几种功能:u 网络设置 可获取网络设置,自定义工作组,不同的工作组中包含不同工作人员的标识符 以及IP地址。 u 发送短信 发送短信功能主要用于室内人员在不干扰别人的情况下与另一个人进行交流。u 发布通知 发布通知功能使主管人员不必为此奔波于各个部门之间来进行专门的通知,只需使用发布通知的功能就可以通知到个人,十分的方便省力。 u 网上会议 网上会议的功能,可以使大家随时随地的在网上召开会议,避免了专门到会议 室召开会议的麻烦,节约了时间和空间。u 文件传输 文件传输功能,可以使相邻计算机之间的文件传输变得十分简单,不必再用U 盘来拷贝,极大的方便了办公人员。 一般的网络通信软件,都采用了C/S或B/S模式。本软件则省去了专用服务器;将服务器的功能嵌入到软件中,使软件本身不仅具有客户端的功能,而且具有服务器的功能。传统的通信软件如QQ,MSN等都需要登陆其服务器后,才能进行双方通信,不能保证信息的安全性。而本软件只在本局域网内流通,无需登陆服务器,有利于信息的保护。传统的通信都采用对等网的形式进行通信,而本软件不仅具有点对点的通信,还有发广播的特点。本软件设计是从用户角度进性开发,处处为用户着想。而且我们充分考虑到了用户可能在操作中出现的各种错误,本软件对一定的错误都会进行友善的提示。2.2 发展前景 此款软件不仅使用方便,功能强大,而且已经被打包成为一个安装文件,安装过程十分简便,只需按照所给的提示进行安装即可。并且该软件还具有很强的扩展性,可以加入很多新的功能。 例如在将来我们可以将一些语音交流,视频会议等功能添加进来。以及添加设置发送通知权限的功能,并通过此功能来管理办公人员是否享有发送通知的权力。还可添加在网络会议室内显示在线人员的功能等等。相信通过不断的改进与完善,此款软件的功能将会越来越强大、越来越完备。能够真正成为办公人员的好助手。第三章 总体设计 确定了软件需求,系统的主要功能有了明确的标准,就进入了设计阶段。下面详细介绍总体设计内容。3.1 系统功能模块图 局域网通信软件系统总体分为五部分:网络设置、发布通知、发送短信、网上会议、文件传输。如下图所示: 局域网通信软件网络设置网上会议 文件传输 发送短信 发布通知 3.2 系统功能模块说明 1.网络设置:可获取网络设置,自定义工作组,不同的工作组中包含不同工作人员的标识符以及IP地址。2.发送短信:可以单独对工作组中任意成员发送信息,进行交谈。3.发送通知:可以对任意工作组中的全体成员发送信息。4.网上会议:可以通过输入姓名进入会议室,召开网络会议。5. 文件传输:可以对任意工作组成员传输文件。3.3 系统的总体设计网络设置1.网络设置部分组成如下图:测试客户端修改客户端删除客户端添加客户端 2. 发送短信部分组成如下图: 发送短信 取消发送发送信息3.发布通知部分组成如下图:发布通知停止发送发送通知4.网上会议部分组成如下图:网上会议 召开会议输入姓名 5.文件传输部分组成如下图:文件传输取消传输传输文件 第四章 详细设计 本章将详细的对各个模块进行分解和剖析,包括程序的流程、变量的使用和窗口的构成等。 系统共有五个模块:网络设置、发送短信、发布通知、网上会议、文件传输。它们分别实现五个部分的功能:1 获取网络设置部分;2 实现发送短信功能;3 实现发布通知功能;4 召开网上会议功能;5 实现文件传输功能; 启动系统将进入登陆界面,通过登陆界面进入系统.点击进入系统,我们则进入网络设置部分。4.1获取网络设置部分详解 在网络设置部分里,用户填写自定义工作组的基本信息:工作组、用户、标识符、IP地址等内容。若用户输入信息正确,则可选择保存设置,继续进行输入;若用户输入信息错误,则系统会显示错误的提示信息,以便重新进行输入。网络设置界面如下 :4.2发送短信设置部分详解 在发送短信部分里,用户可以自定义短信内容,并发送给自定义工作组内任意成员,短信发送后,系统将自动回复你发送结果是否成功。发送短信界面如下:4.3发布通知设置部分详解 : 在发布通知部分中,用户只需将通知的内容输入进去,然后点击“发送通知”即可将通知发送给全体工作组成员。发送通知过程中,若想取消发送,则只需及时点击“停止发送”即可。发布通知界面如下:4.4网上会议设置部分详解 : 在网上会议部分中,用户只需键入自己的姓名,然后点击“进入会议室”,即可参加网络会议,网络会议中,每名用户都可以将自己的发言键入“内容”一栏中,然后进行发送。页面上将会显示出各个成员的姓名及其发言的内容。 网上会议界面如下:4.5文件传输设置部分详解 : 在文件传输部分中,用户只需选中想要传输文件的对象,然后点击“传输文件”,之后选中所要传输的文件将其传送出去即可。在传输过程中我们还可以观察文件传输进度,以了解文件传输情况。 第五章测试报告 无论怎样强调软件测试的重要性和它对软件可靠性的影响都不过分。在开发大型软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺。因此,在软件生命周期的每个阶段都不可避免地会产生差错。我们力求在每个阶段结束之前通过严格的技术审查,尽可能早地发现并纠正差错;但是,经验表明审查并不能发现所有差错,此外在编码过程中还不可避免地会引入新的错误。如果在软件投入生产性运行之前,没有发现并纠正软件的大部分差错,则这些差错迟早会在生产过程中暴露出来,那时不仅改正这些错误的代价更高,而且往往会造成很恶劣的后果。测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误。 软件测试在软件生命周期中横跨两个阶段。通常在编写出每个模块之后就对它做必要的测试(称为单元测试),模块的编写者和测试者是同一个人,编码和单元测试属于软件生命周期的同一个阶段。在这个阶段结束之后,对软件系统还应该进行各种综合测试,这是软件生命周期中的另一个独立的阶段,通常有专门的测试人员承担这项工作。软件测试的步骤:1 模块测试 模块测试的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 双鸭山校园亮化施工方案
- 2025简化建设合同范本
- 2025至2030年中国高亮度发光管数据监测研究报告
- 2025至2030年中国钢筋剥肋滚轧直螺纹套丝机数据监测研究报告
- 2025至2030年中国貂油滋润喷发油数据监测研究报告
- 2025至2030年中国竹花架数据监测研究报告
- 2025至2030年中国真空磁化保温杯数据监测研究报告
- 2025至2030年中国牛二层电焊手套数据监测研究报告
- 2025至2030年中国洗带油数据监测研究报告
- 2025至2030年中国欧式模压门数据监测研究报告
- 通过PDCA降低住院精神病人的逃跑率
- 边坡植草技术交底书
- 中国动画发展史
- 优秀广告文案课件
- 八大特殊作业(八大危险作业)安全管理知识与规范培训课件
- 医院患者自杀应急预案
- CAD培训课件(基础教程)
- 国药茶色素讲稿30课件
- 2021年反假货币知识练习题库
- 有机肥检验报告
- 医院药品信息管理系统(DOC)
评论
0/150
提交评论