




已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录前 言 .2第一章 FTP 简介 .311 FTP 传输机制 .312 FTP 的数据类型 .4第二章 开发工具简介 .521 .C简介 .522. Visual Studio .NET .5221 Visual Studio .NET 的特色6(1) 语言 增强 .6(2) Web 窗体 .6(3) Windows 窗体 .7(4) XML Web services.7(5) XML 支持 .723 .NET 框架 .7第三章 项目简介 .931 需求分析 .932 设计思想 .933 开发流程 .9第四章 开发项目所用的类及其方法简介 .1041 服务器端所用到的类及其方法 .1142 客户端所用到的类及其方法 .1143 服务器与客户端公用的类及其方 法 .12431 NetworkStream 类 .12432 System. IO.File 类 .13433 System.IO.FileStream .15434 System.IO.StreamReader 类 .15435 System.IO.StreamWriter 类 .1644 关于文件和流的一些枚举属性 .17第五章 项目的开发 .1851 服务器的开发过程 .18511 界面设计 .18512 代码及注释 .1952 客户端的开发过程 .23521 客户端主界面设计 .23522 客户都代码及注释 .24523 密码控件界面设计 .29524 密码控件代码及注释 .29第六章 程序演示 .32结束语 .32参考文献 .33第 2 页 共 33 页前 言众所周知,网络技术是当前计算机领域中一个最为热门的发展方向。真如当年个人电脑以惊人的速度和规模进入人类的各个领域和日常生活中,从而替代了大型机和中型机。如今网络的发展给人类的生存和生存方式又带来了一次巨大的冲击。“未来的信息时代是网络的时代”这种观点正在被越来越多的人接受,甚至有人称“网络就是计算机”。网络的飞速发展使网络应用程序的开发地位显得越来越重要,而网络应用程序的开发和传统应用程序的开发在思想和实现上有很大区别。很多的软件公司都开发了它们各自的网络应用程序开发环境,如Delphi,C+Builder,JBuilder等开发环境。同样Microsoft公司也有自己的网络应用程序开发环境Visual Studio.NET 。在此的 “FTP 应用程序” ,是基于 C/S(客户机/服务器)开发模式,以Visual Studio.NET 为开发工具,运用 VC#语言,利用面向对象编程的先进方法,开发的一个实用程序。该程序实现了文件传输的功能,定义了传输文件的细节,可以在服务器和客户端传输特定的数据。第 3 页 共 33 页第一章 FTP 简介11 FTP 传输机制FTP(文件传输协议)的目标是实现文件的共享,使客户可以非直接地使用远程计算机。和大多数的 Internet 服务一样,FTP 也是典型的客户机、服务器模式,在 Windows 平台上,使用一个名叫 FTP 的客户机程序时,就和远程主机上的服务程序连接,然后可以用行命令的方式传输文件了。FTP 传输机制如图11 所示。图 11 FTP 传输机制图中的 PI 代表协议解释器,DTP 代表数据传输过程。如果客户端想与服务器传输文件,首先客户端与服务器连接建立,然后用户发出请求传输文件的命令,客户 PI 解释成 FTP 命令后,发往服务器,同时要求客户 DTP 做好准备。服务器 PI 接受该命令并要求服务器 DTP 开始传输文件,同时服务器 PI 发出响应,通知客户有关服务器状态。传 输FTP 命令FTP 响应服务器 FTP服务器 PI服务器 DTP客户端 FTP客户 DTP客户接口 客户文件文件客户 PI第 4 页 共 33 页12 FTP 的数据类型在实际应用中,客户端和服务器两个系统的数据存储方式可能不同,因此需要对数据进行转换,在传送文本时可用 ASCII 表示,这最容易实现 。但在进行二进制传送的时候,会有不同系统对字节长度要求不同的问题。有的系统是7 位,有的系统可能是 32 位,这也需要进行转换。FTP 数据类型可以有以下多种: ASCII 类型这是所有 FTP 必须实现的默认类型,用于传送文本文件。这种文件类型最容易实现。 EBCDIC 类型EBCDIC 和 ASCII 很相似,仅在类型的功能描述上有一些差别。 图像类型在传输这种类型文件时,发送方将数据打包到 8 位字节中。因为数据结构的原因,需要对数据进行填充,填充字节全部为 0,填充必须在文件结构时使用,而且要标记出以便接收方过滤掉。 本地类型直接将物理数据打包为逻辑字节,不用填充 0,接收方根据逻辑字节大小和本机存储特点进行转换。还有其他一些数据格式,这里就不一一介绍了。FTP 除了支持不同的文件类型外,还支持不同的文件结构,比如页结构、记录结构等,在传输模式上支持流模式、块模式、压缩模式等,推荐使用流模式。第 5 页 共 33 页第二章 开发工具简介21 C简介C是微软.NET 战略中最新推出的新一代开发工具,是 C 语言系列中第一个面向组件的安全代码编程语言。它派生于 C 和 C+语言,综合了 Visul Basic 的高效率和 C+中熟悉的语法,又包含了大量的高效率代码和面向对象特性。C采用了 RAD 的开发过程,能让开发人员在.NET 平台上快速地建立应用程序。对于企业应用而言,C更是具有速度快、性能高等众多优点。C可以同COM服务程序紧密协作;完全支持 COM 及其平台,易于移植;具有自动内存回收功能;没有不完全代码;数组有越界检查,运算和转换有溢出检查;支持元数据和 XML。Microsoft .NET 微软面向下一代互联网软件和服务的全新的战略,它将给软件开发和使用带来一场新的革命。Visual Studio.NET 正是微软为实现其.NET 技术而提供的一整套开发工具。对于专业程序开发人员而言,Visual Studio.NET 意味着更强大的设计能力、更高的生产率、更可靠的解决方案和更短的开发周期,这一切都将帮助我们适应现代快速多变的商务需求。Visual C#是 Microsoft.NET 计划的核心编程语言,它使得开发人员能够快速方便地开发基于.NET 平台的解决方案。C#全面继承了 C 和 C+的优点,同时提供了更高开发效率、更好的灵活性和安全性,是.NET 应用开发的首选。22. Visual Studio .NETVisual Studio .NET 是一套完整的开发工具,用于生成 ASP Web 应用程序、XML Web services、桌面应用程序和移动应用程序。Visual Basic .NET、Visual C+ .NET 和 Visual C# .NET 全都使用相同的集成开发环境 (IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了 .NET 框架的功能,此框架提供对简化 ASP Web 应用程序和 XML Web services 开发的关键技术的访问。第 6 页 共 33 页221 Visual Studio .NET 的特色(1)语言增强Microsoft Visual Basic、Microsoft C+ 和 Microsoft JScript 均已更新,以满足用户的开发需要。另外还引入了一种新语言 Microsoft C#。这些语言利用了 .NET 框架的功能,此框架提供了对简化 ASP Web 应用程序和 XML Web services 开发的关键技术的访问。Visual BasicVisual Basic 已被更新,包括许多新的和改进的语言功能,使 Visual Basic 成为功能强大的面向对象的编程语言。这些功能包括继承、接口和重载,等等。Visual Basic 现在还支持结构化异常处理和自定义属性。另外,Visual Basic 还支持多线程处理。多线程处理是将各个任务分配到不同的处理线程的能力。 C#Visual C#(发音为 C sharp)是一种新的面向对象的编程语言,它从 C 和 C+ 演变而来,为开发应用程序提供了一种简单和类型安全的语言。有关更多信息,请回顾 2.1 节。C+C+ 的托管扩展和属性化编程只是对 C+ 语言的一些增强。托管扩展简化了将现有 C+ 应用程序迁移到新 .NET 框架的任务。与 C+ 关键字一样,属性在源文件中使用并由编译器进行解释。属性旨在提供快速有效的方法来简化用 Visual C+ 进行的 COM 编程。 JScriptJScript 已更新为基于类的面向对象的脚本语言,该语言保留了与早期的 JScript 版本的完全向后兼容性。JScript 现在通过公共语言规范 (CLS) 遵从性提供基于类的对象、类型化变量、真正的已编译代码和跨语言支持。JScript 的主要作用是使用 ASP.NET 开发 Web 站点和使用 .NET 框架脚本自定义应用程序。 (2)Web 窗体Web 窗体是用于创建可编程 Web 页的 ASP.NET 技术。Web 窗体将自己呈现为浏览器兼容的 HTML 和脚本,这使任何平台上的任何浏览器都可以查看 Web 页。使用 Web 窗体,通过将控件拖放到设计器上然后添加代码来创建 Web 页,与创建 Visual Basic 窗体的方法相似。 第 7 页 共 33 页(3)Windows 窗体Windows 窗体是基于 .NET 框架的新的 Microsoft Windows 应用程序开发平台。此框架提供一个有条理的、面向对象的、可扩展的类集,使您能够开发功能丰富的 Windows 应用程序。另外,Windows 窗体可作为多层分布式解决方案中的本地用户界面。 (4)XML Web servicesXML Web services 是可以通过 HTTP 使用 XML 接收请求和数据的应用程序。XML Web services 不受特定组件技术或对象调用约定的制约,因此可由任何语言、组件模型或操作系统访问。在 Visual Studio .NET 中,可以使用 Visual Basic、Visual C#、JScript、C+ 的托管扩展或 ATL Server 快速创建和包含 XML Web services。 (5)XML 支持可扩展标记语言 (XML) 提供描述结构数据的方法。XML 是为在 Web 上传送信息而进行优化的 SGML 的子集。WWW 联合会 (W3C) 定义了 XML 标准以使结构化数据保持统一并独立于应用程序。Visual Studio .NET 完全支持 XML,提供了 XML 设计器以使编辑 XML 和创建 XML 架构更容易。 23 .NET 框架 .NET 框架是用于生成、部署和运行 XML Web services 和应用程序的多语言环境。它包含以下三个主要部分: 1共语言运行库运行库实际上在组件的运行时和开发时操作中都起作用,尽管名称中没有体现这个意思。在组件运行时,运行库除了负责满足此组件在其他组件上可能具有的依赖项外,还负责管理内存分配、启动和停止线程和进程,以及强制执行安全策略。在开发时,运行库的作用稍有变化;由于做了大量的自动处理工作(如内存管理) ,运行库使开发人员的操作非常简单,尤其是与今天的 COM 相比。特别是反射等功能显著减少了开发人员为将业务逻辑转变为可重用组件而必须编写的代码量。 2 统一编程类 框架为开发人员提供了统一的、面向对象的、分层的和可扩展的类库集 (API)。目前,C+ 开发人员使用 Microsoft 基础类,而 Java 开发人员使用 Windows 基础类。框架统一了这些完全不同的模型并且为 Visual Basic 和 第 8 页 共 33 页JScript 程序员同样提供了对类库的访问。通过创建跨所有编程语言的公共 API 集,公共语言运行库使得跨语言继承、错误处理和调试成为可能。从 JScript 到 C+ 的所有编程语言具有对框架的相似访问,开发人员可以自由选择它们要使用的语言。 3 ASP.NET ASP.NET 建立在 .NET 框架的编程类之上,它提供了一个 Web 应用程序模型,并且包含使生成 ASP Web 应用程序变得简单的控件集和结构。ASP.NET 包含封装公共 HTML 用户界面元素(如文本框和下拉菜单)的控件集。但这些控件在 Web 服务器上运行,并以 HTML 的形式将它们的用户界面推送到浏览器。在服务器上,这些控件公开一个面向对象的编程模型,为 Web 开发人员提供了面向对象的编程的丰富性。ASP.NET 还提供结构服务(如会话状态管理和进程回收) ,进一步减少了开发人员必须编写的代码量并提高了应用程序的可靠性。另外,ASP.NET 使用这些同样的概念使开发人员能够以服务的形式交付软件。使用 XML Web services 功能,ASP.NET 开发人员可以编写自己的业务逻辑并使用 ASP.NET 结构通过 SOAP 交付该服务。第 9 页 共 33 页第三章 项目简介31 需求分析包括服务器和客户端两个组件,服务器可以选择服务的内容(也就是各种文件),同时选择任一个大于 1024 的端口号进行监听,并等待客户端的请求,若客户端有请求,则按照客户端的要求进行服务。客户端需要有一个组件实现密码保护功能,当客户输入正确的密码时,可以进入客户端的服务窗口界面。输入需要服务的服务器 IP 号或服务器名称,并输入服务器监听的端口号,就可以与服务器连接,这时在文本框里会看到服务器所有的服务项目,然后选择想下载的文件,进行下载。32 设计思想服务器首先监听端口,等待客户端的连接请求,一旦连接成功,即把可供客户端下载的文件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 厂房股权转让与新能源产业合作开发合同
- 商业地产项目场地标准租赁协议
- 邻居砸墙协议书范本
- 果园采摘园承包与果树修剪技术服务合同
- 风险防范叉车操作工劳动合同
- 高端餐饮企业员工劳动合同范本(含绩效考核)
- 分公司投资建设与产业园区合作协议
- 中医情志与健康的关系
- AI教育智适应系统应用与发展
- 珍爱生命健康成长幼儿园
- 2022年版初中物理课程标准解读-课件
- 2024年建筑业10项新技术
- MOOC 大学物理实验-郑州大学 中国大学慕课答案
- 术后病人烫伤不良事件PDCA循环分析课件
- 配电设备运行、维护、巡回检查制度范本
- 2024年上海外服招聘笔试参考题库附带答案详解
- 工业安全教学课件
- 骨科手术后的康复辅助器具和辅助装置
- 新员工企业文化培训
- 2024年江西吉安市城投公司招聘笔试参考题库含答案解析
- 农产品安全生产技术
评论
0/150
提交评论