第14章VC网络编程.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第14章VC网络编程

第14章 VC网络编程 为了方便用户进行Internet编程,VC中还提供了WinInet,它提供了HTTP、FTP、Gopher等应用层协议的客户端接口,便于进行简单的Internet客户端程序的开发。 本章将主要介绍WinSock接口、WinSock MFC类的使用方法,简单的网络通信程序开发以及使用WinIne开发Internet客户端程序的方法。 14.1 网络通信及开发基础 网络通信是指应用程序需要与网络中其他系统上的应用程序之间进行通讯。进行网络编程的开发,必须要了解网络通信的基本概念。 14.1.1 TCP/IP协议 实现网上通信的应用程序,无论是通过因特网还是小型的局域网,一般都采用同样的原则、通过类似的功能实现网络通信。(具体内容请参照本书) 14.1.2 TCP/IP协议 TCP/IP协议的核心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层,这三层通常是在操作系统内核中实现,因此用户编程一般不涉及这方面的内容。 编程时,编程界面有两种形式:由内核直接提供的系统调用;使用以库函数方式提供的各种函数。前者为核内实现,后者为核外实现。用户服务要通过核外的应用程序才能实现,具体来讲就是使用套接字(socket)来实现。 14.1.3 Windows Sockets基础 Windows下网络编程的规范——Windows Sockets是Windows下得到广泛应用的、开放的、支持多种协议的网络编程接口。从1991年的1.0版到1995年的2.0.8版,经过不断完善并在Intel、Microsoft、Sun、SGI、Informix、Novell等公司的全力支持下,已成为Windows网络编程的事实上的标准。 14.1.4 客户机/服务器模式 在TCP/IP网络中,两个进程间的相互作用的主机模式是客户机/服务器(Client/Server)模式。该模式的建立基于以下两点:非对等作用和通信完全是异步的。客户机/服务器模式在操作过程中采取的是主动请示方式。(具体内容请参照本书) 14.2 基本网络通信开发 CAsyncSocket类封装了异步、非阻塞Socket的基本功能,用它做常用的网络通信软件很方便。对于异步、非阻塞的概念本节暂不讨论,而是围绕CAsyncSocket类,讲解基本的面向连接的流套接字和非连接协议的数据报套接字的创建与使用。 14.2.1 CAsyncSocket类及常用成员函数的使用 在MFC中,为套接口提供了相应的类CAsyncSocket和CSocket,CAsyncSocket提供基于异步通信的套接口封装功能,CSocket则是由CAsyncSocket派生,提供更加高层次的功能。本节将结合套接字的创建和使用过程,介绍CAsyncSocket类的主要成员函数。 (具体内容请参照本书) 14.2.2 使用WinSock进行无连接的通信 WinSock提供了对UDP(用户数据报协议)的支持,通过UDP协议可以向指定IP地址的主机发送数据,同时也可以从指定IP地址的主机接收数据,发送和接收方处于相同的地位没有主次之分。 14.2.3 无连接通信实例 本节给出一个使用CAsyncSocket类实现无连接的数据通信的简单实例。在服务器端,服务启动后,创建的Socket向客户端固定的端口定时(间隔2秒)发送一个计数值;在客户端,创建的Socket从服务器端固定的端口定时(间隔2秒)接收数据,并显示数据。(具体内容请参照本书) 14.2.4 使用WinSock进行有连接的通信 WinSock提供了对TCP(传输控制协议)的支持,通过TCP协议可以与指定IP地址的主机建立,同时利用建立的连接可以双向的交换数据。 使用CAsyncSocket类实现有连接数据交换也不复杂,与无连接通信不同,有连接的通信中必需有一方扮演服务器的角色等待另一方(客户方)的连接请求,所以服务器方需要建立一个监听套接字,然后在此套接字上等待连接。当连接建立后会产生一个新的套接字用于通信。而客户方在创建套接口后只需要简单的调用连接函数就可以创建连接。 14.2.5 有连接通信实例 本节给出一个使用CSocket类实现有连接的数据通信的简单实例。在服务器端,服务启动后,创建的Socket开始监听客户端的连接请求,并处于闭塞状态(无法进行其他操作),当收到客户端的连接请求时,创建一个通信套接字,定时(间隔2秒)向外发送一个计数值,同时关闭监听套接字。 14.3 网络程序设计与开发 对于许多初学者来说,网络通信程序的开发,普遍的一个现象就是觉得难以入手。通过前面的介绍相信读者对网络程序的总体结构有了直观的认识。在本节,将重点介绍Socket事件机制,通过它深入网络程序开发。 14.3.1 网络程序的

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档