- 4
- 0
- 约3.47千字
- 约 33页
- 2016-10-26 发布于广东
- 举报
第5章 网络编程 5.1 客户/服务器模型 客户机/服务器模型的主要思想是要将应用程序的数据表示与数据处理和数据存储分开。客户方主要是向服务器发出数据处理请求,然后对结果数据进行表示输出。服务器方则是对数据处理请求进行接收,然后做出相应处理,处理方式有很多种,比如运算、检验、存储等,最后将处理后的结果返回给客户方。 5.1.1 TCP/IP 协议就是约定,就是双方为了协调地做一件事情而共同遵循的规则。Internet中常用协议有很多,常被统称为TCP/IP协议簇。 5.1.2 TCP和UDP 传输控制协议(TCP)提供了客户机/服务器应用彼此通信的可靠的、点对点、面向连接的通信。 用户数据报协议(UDP) 则是一个非连接型(Connectionless)的非可靠传输协议﹐它并不会运用确认机制来保证资料是否正确地被接收,不需要重传遗失的资料,资料的接收可不必按顺序进行,也不提供回传机制来控制资料流的速度。 5.1.3 套接字(Socket) 套接字是对采用TCP/IP协议进行数据通信时的一个抽象概念,它包含主机地址与服务端口号。在Internet中,主机地址就是客户程序或服务器程序所在的主机的IP地址,端口号则是主机间彼此通信时所引入的一个整数类型的逻辑编号,使得不同程序可以在同一主机上被唯一标识。 端口 5.2 简单的网络应用 Winsock 控件对用户来说是不可见的,它提供了访问 TCP 和 UDP 网络服务的方便途径。Microsoft Access、Visual Basic、Visual C++ 或 Visual FoxPro 的开发人员都可使用它。 5.2 简单的网络应用 5.3 网络消息传输设计 5.3.1 Winsock控件实现服务器端 1.接收远程主机的连接请求 2.接收远程主机发来的消息 1.接收远程主机的连接请求 根据socket的原理,服务器端的工作是在机器的某个端口进行监听,一旦有客户请求就会进行响应,然后与客户建立持久连接。 2.接收远程主机发来的消息 通过以上的步骤,Winsock控件就可以算是一个Winsock服务器控件了,只有服务器端执行了Accept()方法接受了客户端发来的请求,客户端才能够发送消息给服务器。 服务器端实现 1、窗体布局 2、监听并接收远程请求 3、接收远程主机发来的消息 5.3.2 Winsock控件实现客户端 1.向远程服务器请求连接 2.发送数据给远程服务器 1.向远程服务器请求连接 在建立连接时,我们必须知道远程服务器的IP地址以及该服务器所监听的端口号。表中所示是有关建立连接所需要的属性和方法。 2.发送数据给远程服务器 连接好建立之后,我们可以向远程服务器发送消息了。发送消息的方法很简单,通过调用SendData()方法我们就可以实现消息的发送。 客户端实现 1、布局窗体 2、建立连接 3、发送消息 5.4 网络文件传输设计 文件的传输和消息的传递是相类似的,不同的地方是文件数据量比一般的消息要大很多,所以在传输的时候必须分段传输,接收方需要分段接收并将接收到的数据整合成文件。 5.4.1 Winsock控件实现客户端 选择需要发送的文件 传输文件,并对文件传输能实时控制和了解,比如中断传输、显示传输进度条。 1 .选择需要发送的文件 用户单击“文件传输”按钮弹出一个文件选择框,从中选择需要发送的文件。实现这个效果我们需要借助CommonDialog控件。 2.传输文件 (1)需求中已经明确说明文件的传输不能影响消息的传送,也就是说在文件的传输过程中,双方的消息传送还是可以继续进行。所以在该应用程序中,用于消息传送的winsock控件是不能用来传送文件的,必须另外增加winsock控件来传输文件。 (2)文件在传送过程中必须能够被实时控制,如中断传送。那么传输方或者接收方中断文件传送的信号必须让对方知道,从而使对方放弃传输或者接收文件。所以应该再增加一个winsock控件来传送控制信息。 2.传输文件 2.传输文件 (3)文件传输过程必须被实时了解,所以进度条是必不可少的控件。在这里提醒读者的是,如果某一个处理过程需要发费比较长的时间的话,读者尽量采用进度条来显示处理的进展情况,使用户起码知道处理工作正在进行中。 按步骤在该窗体中所添加相应的代码 (1)在通用栏中声明一些变量用来接收文件名以及文件大小等内容。 (2)在窗体加载的时候,初始化进度条以及两个Winsock控件 (3)接收远程发来的控制信息 (4)定义发送文件的函数,由于文件不同与消息
您可能关注的文档
- 新Visual Basic程序设计教程 教学课件 刘炳文 第14章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第01章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第02章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第03章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第04章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第05章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第06章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第07章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第08章.ppt
- 新Visual Basic程序设计教程 教学课件 邱李华 郭全 vb第09章.ppt
最近下载
- 2025新教材-译林版-七年级英语-上册-单词表.xlsx VIP
- 山西省农村信用社(农村商业银行合作银行)个人网上银行.pdf VIP
- XX市非公经济人才引进问题研究XX市重点软科学项目R2004A04研究报告 1【XX市重点软科学项目R2004A04研究报告】XX市非公经济人才引进问题研究执笔: XX大学经济学院 张一力课题主持人:张一力 副.doc VIP
- 船舶空调装置的实例与管理课件.PPT VIP
- 2025-2026学年黑龙江省大庆市高三上学期一模物理试题(附答案解析).docx VIP
- 软科学课题研究报告.doc VIP
- 高中物理必修2全册基础典型练习题(精品含答案).pdf VIP
- 便民摊点抓阄方案.doc VIP
- 中国领汇团队公开课一外汇通论.ppt
- 八年级物理 第6章 质量与密度 精选单元测试题(含答案).doc VIP
原创力文档

文档评论(0)