论坛: 编程破解 标题: Windows Sockets 规范及应用(目录) 复制本贴地址    
作者: xiaoxingchi [xiaoxingchi]    论坛用户   登录
Windows Sockets 规范及应用

-Windows网络编程接口



施 炜 李 铮 秦 颍 编著







******************************************************************
版权信息

本书作者保留所有版权。禁止任何商业性的转载或复制。非赢利性质的转载和复制不得修改文章内容,并请保留此段文字。

Copyright (c) 1995-1996 By  施炜,李铮,秦颖
All Right Reserved
******************************************************************




内容提要

本书适应了Windows、Internet及计算机网络普及的潮流,介绍了一套在Windows下网络编程的规范-Windows Sockets。这套规范是Windows下得到广泛应用的、开放的、支持多种协议的网络编程接口。从1991年的1.0版到1995年的2.0.8版,经过不断完善并在Intel、Microsoft、Sun、SGI、Informix、Novell等公司的全力支持下,已成为Windows网络编程的事实上的标准。为使读者能够充分理解和应用这套规范,本书不但对Windows Sockets 1.1及2.0规范作了较为详尽的介绍,还结合了作者的实际工作,给出了具有实际应用价值的程序实例。书中的内容包括:Windows Sockets规范1.1版及2.0.8版介绍;Windows Sockets网络编程指导和具体应用实例;Windows Sockets规范1.1版及2.0.8版库函数参考等。
本书体系完整,文字流畅,可供从事网络应用开发的工程技术人员和大专院校师生参考。



作者声明

由于成书时间紧迫。本书不免有许多错误和不当之处,故此作者衷心希望各位读者能对本书提出宝贵意见(包括补充新的应用实例和内容),以便我们进一步修改完善此书。我们会尊重相应修订者的版权。作者也衷心希望在我们和各位读者的努力下,本书能够成为一本关于Windows Sockets编程的系统而又准确的免费中文参考书,为广大读者在Windows下网络编程提供帮助。

作者联系地址:
施炜:上海交通大学94032班 (200030)
Email: weishi@fudan.ihep.ac.cn
李铮:上海交通大学自动化系 (200030)
Email: blee.bbs@captain.net.tsinghua.edu.cn
秦颖:上海交通大学94033A班 (200030)
Email: fluke.bbs@captain.net.tsinghua.edu.cn

作者希望每一位拿到本书的读者能以任何方式通知我们。以便我们掌握本书的应用情况。并敬请各位读者暂时不要在其他FTP站点散发,谢谢合作。

编著者
1996年5月20日

前言

当今世界正处于信息时代,计算机和通信网络是这一时代所谓“信息基础设施”。网络化是计算机技术九十年代的重要发展趋势之一。目前计算机网络的新发展是:异机种网络和异网互联有较大突破。TCP/IP协议在异网互联中体现出了其强大的生命力,以它为基础组建的Internet是目前国际上规模最大的计算机网间网,到1991年底世界上已有26个国家的五千多个网络连入Internet,其中包含了数千个组织的30万台主机,用户数以百万计。
与计算机网络的普及相呼应的是Windows的广泛应用,现在在全世界各地已有超过四千万用户在使用不同版本的Windows。自1995年8月24日Windows 95正式推出以来,在短短的一个星期内销售量已超过100万份,有的零售商店不得不半夜开门,以迎接滚滚而来的抢购者。这说明以用户友好的图形界面为基础的Windows已得到用户的普遍认可,已经并将继续成为个人机平台上的事实上的操作系统标准。所以研究和开发在Windows下的网络编程技术具有普遍的应用价值。
在Windows下的各种网络编程接口中,Windows Sockets脱颖而出,越来越得到大家的重视,这是因为Windows Sockets规范是一套开放的、支持多种协议的Windows下的网络编程接口。从1991年的1.0版到1995年的2.0.8版,经过不断完善并在Intel、Microsoft、Sun、SGI、Informix、Novell等公司的全力支持下,已成为Windows网络编程的事实上的标准。
在作者利用Windows Sockets规范进行应用开发的过程中,发现这方面的资料很少,特别是缺乏一本全面而实用的专著。为了使广大用户能够充分理解和应用这套规范,我们编写了这本书。本书不但对Windows Sockets 1.1及2.0规范作了较为详尽的介绍,还结合了作者的实际工作,给出了具有实际应用价值的程序实例。希望它能对Windows Sockets规范在国内的推广和应用起到抛砖引玉的作用。读者在阅读本书的过程中,如果能对自己的学习工作有所帮助和指导,是作者的最大愿望。由于时间紧迫,作者学识有限,书中错误在所难免,偏颇和不当之处,恳请读者不吝赐教。
本书由施炜、李铮、秦颖合作完成,其中,第一、二、四、六章和5.2节由施炜编写;第七章、5.1节、3.4节由李铮编写;第5.3节、3.1-3.3节由秦颖编写。在本书的编写过程中,得到了上海交通大学的毛向辉先生的大力支持,并提供了一些最新的资料,在此谨表示衷心的谢意。

编著者
1995年9月于上海交通大学

目录
第一章 简介 
1.1 什么是WINDOWS SOCKETS规范? 
1.2 BEKELEY套接口 
1.3 MICROSOFT WINDOWS和针对WINDOWS的扩展 
1.4 这份规范的地位 
1.5 曾经作过的修改 
1.5.1 Windows Sockets 1.0 
1.5.2 Windows Sockets 1.1 
第二章 使用WINDOWS SOCKETS 1.1编程 
2.1 WINDOWS SOCKETS协议栈安装检查 
2.2 套接口 
2.2.1 基本概念 
2.2.2 客户机/服务器模型 
2.2.3 带外数据 
2.2.4 广播 
2.3 字节顺序 
2.4 套接口属性选项 
2.5 数据库文件 
2.6 与BERKELEY套接口的不同 
2.6.1 套接口数据类型和错误数值 
2.6.2 select()函数和FD_*宏 
2.6.3 错误代码-errno,h_errno,WSAGetLastError() 
2.6.4 指针 
2.6.5 重命名的函数 
2.6.5.1 close()和closesocket() 
2.6.5.2 ioctl()和iooctlsocket() 
2.6.6 阻塞例程和EINPROGRESS宏 
2.6.7 Windows Sockets支持的最大套接口数目 
2.6.8 头文件 
2.6.9 API调用失败时的返回值 
2.6.10 原始套接口 
2.7 在多线程WINDOWS版本中的WINDOWS SOCKETS 
第三章 WINDOWS SOCKETS 1.1应用实例 
3.1 套接口网络编程原理 
3.2 WINDOWS SOCKETS编程原理 
3.3 WINDOWS SOCKETS与UNIX套接口编程实例 
3.3.1 SERVER介绍 
3.3.2 CLIENT介绍 
3.3.3 源程序清单 
3.4 另一个精巧的应用程序实例-WSHOUT 
3.4.1 源程序目录 
3.4.2 程序逻辑结构 
3.4.3 源程序清单及注释 
3.4.3.1 wshout.c清单 
3.4.3.2 wshout.h清单 
3.4.3.3 wshout.rc清单 
3.4.3.4 ushout.c清单 
3.4.3.5 ulisten.c清单 
3.4.3.6 tshout.c清单 
3.4.3.7 tlisten.c清单 
3.4.3.8 errno.c清单 
3.4.3.9 resolve.c清单 
第四章 WINDOWS SOCKET 1.1库函数概览 
4.1 套接口函数 
4.1.1 阻塞/非阻塞和数据易失性 
4.2 数据库函数 
4.3 针对MICROSOFT WINDOWS的扩展函数 
4.3.1 异步选择机制 
4.3.2 异步支持例程 
4.3.3 阻塞钩子函数方法 
4.3.4 错误处理 
4.3.5 通过中介DLL调用Windows Sockets DLL 
4.3.6 Windows Sockets实现内部对消息的使用 
4.3.7 私有的API接口 
第五章 套接口库函数参考 
5.1 WINDOWS SOCKET 1.1库函数参考 
5.1.1 accept() 
5.1.2 bind() 
5.1.3 closesocket() 
5.1.4 connect() 
5.1.5 getpeername() 
5.1.6 getsockname() 
5.1.7 getsockopt() 
5.1.8 htonl() 
5.1.9 htons() 
5.1.10 inet_addr() 
5.1.11 inet_ntoa() 
5.1.12 ioctlsocket() 
5.1.13 listen() 
5.1.14 ntohl() 
5.1.15 ntohs() 
5.1.16 recv() 
5.1.17 recvfrom() 
5.1.18 select() 
5.1.19 send() 
5.1.20 sendto() 
5.1.21 setsockopt() 
5.1.22 shutdown() 
5.1.23 socket() 
5.2 数据库函数 
5.2.1 gethostbyaddr() 
5.2.2 gethostbyname() 
5.2.3 gethostname() 
5.2.4 getprotobyname() 
5.2.5 getprotobynumber() 
5.2.6 getservbyname() 
5.2.7 getservbyport() 
5.3 WINDOWS扩展函数 
5.3.1 WSAAsyncGetHostByAddr() 
5.3.2 WSAAsyncGetHostByName() 
5.3.3 WSAAsyncGetProtoByName() 
5.3.4 WSAAsyncGetProtoByNumber() 
5.3.5 WSAAsyncGetServByName() 
5.3.6 WSAAsyncGetServByPort() 
5.3.7 WSAAsyncSelect() 
5.3.8 WSACancelAsyncRequest() 
5.3.9 WSACancelBlockingCall() 
5.3.10 WSACleanup() 
5.3.11 WSAGetLastError() 
5.3.12 WSAIsBlocking() 
5.3.13 WSASetBlockingHook() 
5.3.14 WSASetLastError() 
5.3.15 WSAStartup() 
5.3.16 WSAUnhookBlockingHook() 
第六章 WINDOWS SOCKET 2的扩展特性 
6.1 同时使用多个传输协议 
6.2 与WINDOWS SOCKET 1.1应用程序的向后兼容性 
6.2.1 源码的兼容性 
6.2.2 二进制兼容性 
6.3 在WINDOWS SOCKETS中注册传输协议 
6.3.1 使用多个协议 
6.3.2 select()函数应用中关于多个服务提供者的限制 
6.4 协议无关的名字解析 
6.5 重叠I/O和事件对象 
6.5.1 事件对象 
6.5.2 接收操作完成指示 
6.5.2.1 阻塞并且等待完成指示。 
6.5.2.2 检查完成指示 
6.5.2.3 使用套接口I/O操作完成例程 
6.5.3 WSAOVERLAPPED的细节 
6.6 使用事件对象异步通知 
6.7 服务的质量(QOS) 
6.8 套接口组 
6.9 共享套接口 
6.10 连接建立和拆除的高级函数 
6.11 扩展的字节顺序转换例程 
6.12 分散/聚集方式I/O 
6.13 协议无关的多点通讯 
6.14 新增套接口选项一览 
6.15 新增套接口IOCTL操作代码 
6.16 新增函数一览 
第七章 WINDOWS SOCKETS 2扩展库函数简要参考 
7.1 WSAACCEPT() 
7.2 WSACLOSEEVENT() 
7.3 WSACONNECT() 
7.4 WSACREATEEVENT() 
7.5 WSADUPLICATESOCKET() 
7.6 WSAENUMNETWORKEVENTS() 
7.7 WSAENUMPROTOCOLS() 
7.8 WSAEVENTSELECT() 
7.9 WSAGETOVERLAPPEDRESULT() 
7.10 WSAGETQOSBYNAME() 
7.11 WSAHTONL() 
7.12 WSAHTONS() 
7.13 WSAIOCTL() 
7.14 WSAJOINLEAF() 
7.15 WSANTOHL() 
7.16 WSANTOHS() 
7.17 WSARECV() 
7.18 WSARECVDISCONNECT() 
7.19 WSARECVFROM() 
7.20 WSARESETEVENT() 
7.21 WSASEND() 
7.22 WSASENDDISCONNECT() 
7.23 WSASENDTO() 
7.24 WSASETEVENT() 
7.25 WSASOCKET() 
7.26 WSAWAITFORMULTIPLEEVENTS() 
附录A 错误代码 
附录B WINDOWS SOCKETS头文件 
附录B.1 WINDOWS SOCKETS 1.1头文件 
附录B.2 WINDOWS SOCKETS 2头文件 
附录B.3 WINSOCK.DEF文件 
附录C 参考文献 

地主 发表时间: 04/29 08:33

回复: group [group]   论坛用户   登录
伟大!

B1层 发表时间: 04/29 11:33

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号