Visual C++实用教程第12章-网络编程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
12.3 WinSock类 在12.2节中简单介绍了直接利用WinSock API进行网络传输的基本步骤以及主要函数的使用方法,而实际利用Visual C++ 6.0开发网络应用程序的时候,很少直接利用这些API进行编程,因为MFC已经把这些API都封装到MFC提供的类中了。 本节将详细介绍在网络编程中经常用到的MFC提供的两个类,即CAsyncSocket类和CSocket类。 它们的继承关系如图12-1所示。 图12-1 CAsyncSocket类和 CSocket类的继承关系 12.3.1 CAsyncSocket类 CAsyncSocket类在很低的级别上封装了Windows Socket API,该类可以使程序员用面向对象的方法进行Socket编程,而且可以非常方便地调用其他MFC对象。 要使用一个CAsyncSocket对象,则先调用它的构造函数,然后调用Create()函数,以创建一个套接字句柄(SOCKET类型)。 CAsyncSocket对象既可以在栈中,也可以在堆中。 第12章 网 络 编 程 在众多的计算机技术中,网络技术是和人们关系最紧密的计算机技术之一。 近年来,网络以超乎想象的速度飞快发展,在这种趋势下,编写网络应用程序就成为一项常见的技能。 本章将系统地介绍网络编程的有关知识,主要内容如下。 ● 网络编程的基础知识。 ● 网络应用程序的基本结构及流程。 ● WinSock类详解。 网络编程的基础知识 12.1 网络应用程序 12.2 WinSock类 12.3 小 结 12.4 12.1 网络编程的基础知识 当今主要的网络模型有OSI参考模型、TCP/IP参考模型、NetBEUI参考模型和IPX/SPX参考模型,其中最常用的是TCP/IP参考模型,本章也以TCP/IP参考模型来讲解网络编程技术。 12.1.1 Socket简介 上世纪80年代初,加利福尼亚大学伯克利分校在UNIX操作系统下实现了TCP/IP,它们为TCP/IP网络通信开发了一个应用程序接口(API),这个API称为Socket(套接字)接口。 Socket给程序员提供了一个高层接口,它的出现使得程序员在编写网络应用程序时只需要调用函数,对网络的底层细节并不需要精通,因此十分方便。 Socket在UNIX上的巨大成功使得人们迫切想要在Windows上也得到同样的便利。 12.1.2 Windows套接字规范简介 Windows套接字几个标志性的版本有WinSock 1.0、WinSock 1.1和WinSock 2.0,分别介绍如下。 1.WinSock 1.0 WinSock 1.0是网络软件供应商和用户协会细致周到的工作结晶。 WinSock 1.0规范的发布是为了让网络软件供应商和应用程序开发者都能够开始建立各自符合WinSock标准的实现和应用程序。 2.WinSock 1.1 WinSock 1.1除了继承WinSock 1.0的准则和结构外,还作了一些必要的改动。 这些改动除了包含了一些更加清晰的说明和对WinSock 1.0的小改动之外,还包含了如下重大的变更。 ● 为了更加简单的得到主机名和地址,增加了gethostname()函数。 ● 在DLL中保留了小于1000的序数,而对大于1000的序数则没有限制,这使WinSock供应商可以在DLL中加入自己的界面,而不用担心所选择的序数会和WinSock将来的版本冲突。 ● 增加了WSAStartup()函数和WSACleanup()函数之间的关联,要求两个函数对应,这使得应用程序开发者和第三方DLL在使用WinSock实现时不需要考虑其他函数对这套API的调用。 ● 调整函数in_addr()的返回类型,in_addr的结构改为无符号长整型,这个改动是为了适应不同的C编译器对返回类型为4字节结构函数的不同处理方法。

文档评论(0)

132****9295 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档