《计算机科学与技术毕业设计-2.8万字基于.NET的网络下载工具设计与实现.docx》由会员分享,可在线阅读,更多相关《计算机科学与技术毕业设计-2.8万字基于.NET的网络下载工具设计与实现.docx(67页珍藏版)》请在优知文库上搜索。
1、编号:()字号林生毕业设计(论文)题目:基于.NET的网络下载工具设计与实现姓名:XXX学号:08053320班级:计07-X十博一大-O一一年六月中国矿业大学本科生毕业论文姓名:XXXX学号:08053320学院:计算机科学与技术专业:计算机科学与技术论文题目:基于.NET的网络下载工具设计与实现专题:指导教师:李政伟职称:副教授2011年6月徐州中国矿业大学毕业论文任务书学院计算机专业年级计05-2学生姓名李闪闪任务下达日期:20XX年XX月XX日毕业论文日期:20XX年XX月XX日至20XX年XX月XX日毕业论文题目:基于.NET的网络下载工具设计与实现毕业论文专题题目:毕业论文主要内容
2、和要求:1 .使用C#语言,在VisualStudio2008.NET平台下进行开发2 .使用.NETFramework3.5类库3 .实现网络远程资源的多线程下载4 .实现断点续传的下载5 .具有良好的用户界面并且界面支持国际化院长签字:指导教师签字:中国矿业大学毕业论文指导教师评阅书指导教师评语(基础理论及基本技能的掌握;独立解决实际问题的能力;研究内容的理论依据和技术方法;取得的主要成果及创新点;工作态度及工作量;总体评价及建议成绩;存在问题;是否同意答辩等):成绩:指导教师签字:中国矿业大学毕业论文评阅教师评阅书评阅教师评语(选题的意义;基础理论及基本技能的掌握;综合运用所学知识解决实
3、际问题的能力;工作量的大小;取得的主要成果及创新点;写作的规范程度;总体评价及建议成绩;存在问题;是否同意答辩等):成绩:评阅教师签字:中国矿业大学毕业论文答辩及综合成绩答辩情况提出问题回答问题正确赫10有一般性1M则性没有答辩委员会评语及建议成绩:答辩委员会主任签字:年月日学院领导小组综合评定成绩:学院领导小组负责人:年月日现代信息技术的发展速度越来越快,每一台计算机工作都或多或少的依赖于计算机网络。而计算机使用网络目的就是获取网络上的资源和信息,而使用资源就需要从网络远程获取资源,如何从远程网络快速的获取大量的网络资源就是本文所要探讨的问题。本软件的主要功能是实现了HTTP资源的断点续传的
4、下载,能够对一个网络资源进行多线程任务下载,实现了用户界面的高度灵活以及国际化的支持。不足之处是只支持了最原始的下载方式,没有对目前主流的BT、P2P下载等做一些支持,同样也不能够像迅雷一样进行自主的资源嗅探。同时本软件支持了软件界面的国际化,可以使用不同的语言作为本软件的界面语言。采用Xml作为记录文件实现了文件的断点续传的下载,同时对于c#对于多线程的支持做了进一步的讨论。同时对一些C#提供的WindoWS控件进行了重载,达到定制控件的效果。关键词:下载;C#;.NET;多线程ABSTRACTTodaythedevelopmentofmoderninformationtechnologyi
5、sfasterandfaster,moreorlessdependentoncomputernetworks.Theaimistousenetworkcomputersaccesstonetworkresourcesandinformation,anduseofresourcesontheneedsofremoteaccesstoresourcesfromthenetwork,howfastthenetworkfromaremoteaccesstoalargenumberofnetworkresources,thisarticleistoexploretheissue.Theprimaryfu
6、nctionofthissoftwareistoachievetheresourcesHTTPdownload,toanetworkofresourcesformulti-threadeddownloadtaskstoachieveahighlyflexibleuserinterfaceaswellasinternationalsupport.Lackofsupportisonlythemostprimitivewaytodownload,thereisnomainstreamofthecurrentBT,P2Pdownloadingandothersupporttodosomething,t
7、hesamecannotbethesameasThunderresourcestocarryouttheirownsnuffer.Andthesoftwaresupportstheinternationalizationofsoftwareinterface,youcanuseadifferentlanguageasthelanguageofthesoftwareinterface.XmlasthelogfileusingaHTTPfiledownload,c#atthesametimeformulti-threadedsupportforfurtherdiscussion.Atthesame
8、time,someC#toprovidecontrolofthewindowshavebeenoverloadedtotheeffectofcustomcontrolsKeywords:Download;C#;.NET;Multithreading1绪论11.1 开发背景11.2 开发意义12系统分析22.1设计概述22.Ll实现目标22.1.2开发环境简介22.2开发相关技术简介42.2.1网络通信技术42.2.2多线程技术82.2.3HTTP和FTP协议92.2.4断点续传技术112.2.5XML及C#对于XML的支持142.2.6C#对于HTTP下载支持142.2.7C#3.O特性一Ii
9、nq152.3可行性分析162.3.1技术可行性分析162.3.2经济可行性分析162.3.3操作可行性分析163概要设计173.1勾173.2主要功能流程图173. 3其他主要功能184详细设计194. 1获取网络资源194. 1.1功能说明194.1. 2设计说明194. 2线程任务分配224.2. 1功能说明234.2.2设计说明234.2.3设计流程234.3创建下载任务244.4任务下载244.4.1功能说明254.4.2设计说明254.4.3核心流程254.5事件监听器设计264.5.1功能说明264.5.2事件核心代码274.6下载控制器设计274.6.1功能说明274.6.2主
10、要操作284.6.3功能流程284.7断点记录文件设计284.7.1断点记录文件的设计294.7.2设计说明294.8软件界面国际化支持304.8.1国际化支持流程304.8.2国际化支持设计314.9系统配置334.9.1注册表配置334.9.2XML文件配置344.IOGUI界面设计354. 10.1功能说明354. 10.2设计说明355设计问题总结395. 1断点设置问题395. 2下载速度统计问题395. 3GUI设计问题395. 4其他主要问题40总结41参考文献42翻译部分43英文原文43中文译文51致谢561绪论1.1 开发背景MiCroSOft在推出.NETFramework
11、时推出了C#语言,一种全新的面向对象的语言。C#语言在对于windows应用程序的方面有着良好的支持,用c#编写windowsAPPliCation方便快捷,而且程序的健壮性也很高。C#也从刚开始的1.0到LL2.0,3.0不断的发展强大,到如今的WPF,WCF等等。并且C#语言对于网络也有着良好的支持,HTPP、FTP、TCP、UDP等以及一些更高层更底层的网络协议的支持,所以采用C#作为开发语言是一个不错的选择。随着互联网应用范围不断扩展,网络包含的信息资源日益增多,互联网用户可以通过网络下载所需的数据资源保存在本地磁盘当中,因此相应的基于网络的下载工具应运而生。对于一个网络下载工具,有两
12、个问题一直阻碍着下载技术的发展:速度和下载后的管理。但是伴随着基于网络的多线程下载技术的出现,如今的下载工具彻底摆脱了这两个问题的束缚并且向着更为人性化的方面发展下去。1.2 开发意义本系统是开发一个多线程下载工具,基本实现单个资源的多线程任务下载,同时实现断点续传的功能。相对于目前主流下载工具的实现技术,例如p2p,BT等新的一系列下载技术是本设计是不能相比的。实现这么一个下载工具最大的意义是探索多线程下载的基本原理,断点续传的原理综合运用所学的知识,提高开发者的动手能力,及查阅资料继续学习的能力。本软件的过程中运用了很多c#中比较强大的功能,例如c#对于xml语言的支持,c#序列化的技术,
13、c#对于WindOWS底层的支持,c#网络功能,以及c#3.5所支持的LINQ,语言级集成查询(LangUageINtegratedQuery),加深开发者对于c#语言和相对应技术的学习,也满足了开发者对于c#APPliCation的追求。2系统分析2.1 设计概述2.1.1 实现目标对于一个多线程下载工具的设计,首先就是要设定好实现的目标,确定开发的环境。有个合理的设计目标使得在设计过程中就不会茫然,思路更清晰,编码就不用花费太多的时间。而一个好的前期设计和一个开发环境对提高开发的效率起着很重要的作用。实现一个实用的多任务,多线程下载工具。具备以下功能:1)实现一个简洁的易操作的GUl界面;
14、2)实现新建下载任务的功能;3)下载过程实现多任务,多线程的功能;4)实现任务暂停,及恢复下载的功能;5)实现停止任务功能;6)软件在下载过程中关闭,打开后重新开始下载;7)任务异常终止或不能下载时给予相关提示和进行一些相应的处理;8)以及一些断点续传下载软件常见的功能。2.1.2 开发环境简介MicrosoftVisualStudio2008简介MicrosoftVisualStudio2008使开发人员能够快速创建高质量、用户体验丰富而又紧密联系的应用程序,充分展示了Microsoft开发智能客户端应用程序的构想。借助VisualStudio2008,采集和分析信息将变得更为简单便捷,业务
15、决策也会因此变得更为有效。任何规模的组织都可以使用VisualStudio2008快速创建能够利用WindowsVista和2007Officesystem的更安全、更易于管理并且更可靠的应用程序。使用MiCrOSoft.NETFramework3.5.NETFramework提供了用于解决常见编程任务的构建基块(预制的软件),从而能够快速构造具有出色的最终用户体验的紧密联系的应用程序。在.NETFramework模型业务流程上有效构建的紧密联系的应用程序有利于在异类环境中实现系统集成。VisualStudio和.NETFramework的结合使用减少了对公用管道代码的需要,从而缩短了开发时间并使开发人员能够集中精力解决业务问题。.NETFra