亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cwsbook.txt

?? 介紹window下socket編程的一本好書
?? TXT
?? 第 1 頁 / 共 5 頁
字號:
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月于上海交通大學

目錄
第一章 簡介	11
1.1 什么是WINDOWS SOCKETS規范?	11
1.2 BEKELEY套接口	12
1.3 MICROSOFT WINDOWS和針對WINDOWS的擴展	13
1.4 這份規范的地位	13
1.5 曾經作過的修改	13
1.5.1 Windows Sockets 1.0	13
1.5.2 Windows Sockets 1.1	13
第二章 使用WINDOWS SOCKETS 1.1編程	15
2.1 WINDOWS SOCKETS協議棧安裝檢查	15
2.2 套接口	15
2.2.1 基本概念	15
2.2.2 客戶機/服務器模型	16
2.2.3 帶外數據	17
2.2.4 廣播	17
2.3 字節順序	18
2.4 套接口屬性選項	18
2.5 數據庫文件	19
2.6 與BERKELEY套接口的不同	20
2.6.1 套接口數據類型和錯誤數值	20
2.6.2 select()函數和FD_*宏	20
2.6.3 錯誤代碼-errno,h_errno,WSAGetLastError()	21
2.6.4 指針	21
2.6.5 重命名的函數	22
2.6.5.1 close()和closesocket()	22
2.6.5.2 ioctl()和iooctlsocket()	22
2.6.6 阻塞例程和EINPROGRESS宏	22
2.6.7 Windows Sockets支持的最大套接口數目	22
2.6.8 頭文件	23
2.6.9 API調用失敗時的返回值	23
2.6.10 原始套接口	23
2.7 在多線程WINDOWS版本中的WINDOWS SOCKETS	24
第三章 WINDOWS SOCKETS 1.1應用實例	25
3.1 套接口網絡編程原理	25
3.2 WINDOWS SOCKETS編程原理	27
3.3 WINDOWS SOCKETS與UNIX套接口編程實例	28
3.3.1 SERVER介紹	28
3.3.2 CLIENT介紹	29
3.3.3 源程序清單	30
3.4 另一個精巧的應用程序實例-WSHOUT	37
3.4.1 源程序目錄	38
3.4.2 程序邏輯結構	38
3.4.3 源程序清單及注釋	39
3.4.3.1 wshout.c清單	39
3.4.3.2 wshout.h清單	53
3.4.3.3 wshout.rc清單	55
3.4.3.4 ushout.c清單	60
3.4.3.5 ulisten.c清單	63
3.4.3.6 tshout.c清單	66
3.4.3.7 tlisten.c清單	69
3.4.3.8 errno.c清單	73
3.4.3.9 resolve.c清單	74
第四章 WINDOWS SOCKET 1.1庫函數概覽	79
4.1 套接口函數	79
4.1.1 阻塞/非阻塞和數據易失性	80
4.2 數據庫函數	81
4.3 針對MICROSOFT WINDOWS的擴展函數	82
4.3.1 異步選擇機制	83
4.3.2 異步支持例程	83
4.3.3 阻塞鉤子函數方法	83
4.3.4 錯誤處理	84
4.3.5 通過中介DLL調用Windows Sockets DLL	84
4.3.6 Windows Sockets實現內部對消息的使用	85
4.3.7 私有的API接口	85
第五章 套接口庫函數參考	86
5.1 WINDOWS SOCKET 1.1庫函數參考	86
5.1.1 accept()	86
5.1.2 bind()	87
5.1.3 closesocket()	89
5.1.4 connect()	90
5.1.5 getpeername()	92
5.1.6 getsockname()	93
5.1.7 getsockopt()	94
5.1.8 htonl()	95
5.1.9 htons()	96
5.1.10 inet_addr()	96
5.1.11 inet_ntoa()	97
5.1.12 ioctlsocket()	98
5.1.13 listen()	99
5.1.14 ntohl()	101
5.1.15 ntohs()	101
5.1.16 recv()	102
5.1.17 recvfrom()	103
5.1.18 select()	105
5.1.19 send()	107
5.1.20 sendto()	108
5.1.21 setsockopt()	110
5.1.22 shutdown()	112
5.1.23 socket()	114
5.2 數據庫函數	115
5.2.1 gethostbyaddr()	115
5.2.2 gethostbyname()	116
5.2.3 gethostname()	117
5.2.4 getprotobyname()	118
5.2.5 getprotobynumber()	119
5.2.6 getservbyname()	120
5.2.7 getservbyport()	122
5.3 WINDOWS擴展函數	122
5.3.1 WSAAsyncGetHostByAddr()	123
5.3.2 WSAAsyncGetHostByName()	125
5.3.3 WSAAsyncGetProtoByName()	126
5.3.4 WSAAsyncGetProtoByNumber()	128
5.3.5 WSAAsyncGetServByName()	130
5.3.6 WSAAsyncGetServByPort()	132
5.3.7 WSAAsyncSelect()	134
5.3.8 WSACancelAsyncRequest()	139
5.3.9 WSACancelBlockingCall()	140
5.3.10 WSACleanup()	141
5.3.11 WSAGetLastError()	142
5.3.12 WSAIsBlocking()	143
5.3.13 WSASetBlockingHook()	143
5.3.14 WSASetLastError()	145
5.3.15 WSAStartup()	146
5.3.16 WSAUnhookBlockingHook()	150
第六章 WINDOWS SOCKET 2的擴展特性	152
6.1 同時使用多個傳輸協議	152
6.2 與WINDOWS SOCKET 1.1應用程序的向后兼容性	153
6.2.1 源碼的兼容性	153
6.2.2 二進制兼容性	153
6.3 在WINDOWS SOCKETS中注冊傳輸協議	154
6.3.1 使用多個協議	154
6.3.2 select()函數應用中關于多個服務提供者的限制	155
6.4 協議無關的名字解析	155
6.5 重疊I/O和事件對象	156
6.5.1 事件對象	156
6.5.2 接收操作完成指示	157
6.5.2.1 阻塞并且等待完成指示。	157
6.5.2.2 檢查完成指示	157
6.5.2.3 使用套接口I/O操作完成例程	157
6.5.3 WSAOVERLAPPED的細節	158
6.6 使用事件對象異步通知	159
6.7 服務的質量(QOS)	159
6.8 套接口組	160
6.9 共享套接口	160
6.10 連接建立和拆除的高級函數	161
6.11 擴展的字節順序轉換例程	162
6.12 分散/聚集方式I/O	162
6.13 協議無關的多點通訊	162
6.14 新增套接口選項一覽	163
6.15 新增套接口IOCTL操作代碼	163
6.16 新增函數一覽	164
第七章 WINDOWS SOCKETS 2擴展庫函數簡要參考	166
7.1 WSAACCEPT()	166
7.2 WSACLOSEEVENT()	167
7.3 WSACONNECT()	167
7.4 WSACREATEEVENT()	169
7.5 WSADUPLICATESOCKET()	170
7.6 WSAENUMNETWORKEVENTS()	171
7.7 WSAENUMPROTOCOLS()	171
7.8 WSAEVENTSELECT()	172
7.9 WSAGETOVERLAPPEDRESULT()	174
7.10 WSAGETQOSBYNAME()	175
7.11 WSAHTONL()	175
7.12 WSAHTONS()	176
7.13 WSAIOCTL()	176
7.14 WSAJOINLEAF()	177
7.15 WSANTOHL()	179
7.16 WSANTOHS()	179
7.17 WSARECV()	180
7.18 WSARECVDISCONNECT()	181
7.19 WSARECVFROM()	182
7.20 WSARESETEVENT()	184
7.21 WSASEND()	184
7.22 WSASENDDISCONNECT()	186
7.23 WSASENDTO()	186
7.24 WSASETEVENT()	188
7.25 WSASOCKET()	189
7.26 WSAWAITFORMULTIPLEEVENTS()	190
附錄A 錯誤代碼	192
附錄B WINDOWS SOCKETS頭文件	196
附錄B.1 WINDOWS SOCKETS 1.1頭文件	196
附錄B.2 WINDOWS SOCKETS 2頭文件	217
附錄B.3 WINSOCK.DEF文件	252
附錄C 參考文獻	255


第一章 簡介
1.1 什么是Windows Sockets規范?
	Windows Sockets規范以U.C. Berkeley大學BSD UNIX中流行的Socket接口為范
例定義了一套Micosoft Windows下網絡編程接口。它不僅包含了人們所熟悉的
Berkeley Socket風格的庫函數;也包含了一組針對Windows的擴展庫函數,以使程
序員能充分地利用Windows消息驅動機制進行編程。
	Windows Sockets規范本意在于提供給應用程序開發者一套簡單的API,并讓各
家網絡軟件供應商共同遵守。此外,在一個特定版本Windows的基礎上,Windows 
Sockets也定義了一個二進制接口(ABI),以此來保證應用Windows Sockets API的
應用程序能夠在任何網絡軟件供應商的符合Windows Sockets協議的實現上工作。因
此這份規范定義了應用程序開發者能夠使用,并且網絡軟件供應商能夠實現的一套
庫函數調用和相關語義。
	遵守這套Windows Sockets規范的網絡軟件,我們稱之為Windows Sockets兼容
的,而Windows Sockets兼容實現的提供者,我們稱之為Windows Sockets提供者。
一個網絡軟件供應商必須百分之百地實現Windows Sockets規范才能做到現
Windows Sockets兼容。

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩综合色| 日本久久一区二区三区| 亚洲成人福利片| 一区二区成人在线| 亚洲视频一二三| 亚洲精品高清在线观看| 亚洲欧美电影一区二区| 亚洲精品v日韩精品| 亚洲六月丁香色婷婷综合久久| 国产精品伦一区| 亚洲啪啪综合av一区二区三区| 中文字幕一区二区三区在线观看 | 色8久久人人97超碰香蕉987| 成人小视频在线观看| 丁香五精品蜜臀久久久久99网站| 成人av午夜电影| 色婷婷亚洲综合| 91精品在线免费| 精品国产一区二区三区不卡| 国产欧美一区二区三区在线看蜜臀| 国产精品久久久久久户外露出| 国产精品污www在线观看| 日韩美女久久久| 亚洲成人精品一区二区| 久久99国产精品免费| 丰满放荡岳乱妇91ww| 欧美中文字幕一二三区视频| 日韩欧美精品三级| 亚洲婷婷国产精品电影人久久| 午夜久久久影院| 国产精品亚洲成人| 在线亚洲免费视频| 精品国产一区二区在线观看| 亚洲视频免费观看| 日本一区中文字幕| 94色蜜桃网一区二区三区| 337p亚洲精品色噜噜| 欧美国产一区视频在线观看| 亚洲无线码一区二区三区| 国产美女视频91| 91黄色免费看| 国产精品美女久久久久久 | 日韩午夜中文字幕| 国产精品久久99| 免费人成在线不卡| 色婷婷亚洲一区二区三区| 日韩欧美一级二级三级 | 欧美精品三级日韩久久| 久久精品日产第一区二区三区高清版 | 日韩一区二区三区四区| 中文字幕一区二区三区视频| 久久成人久久鬼色| 欧美日韩高清不卡| 亚洲欧美成人一区二区三区| 国产一区二区美女诱惑| 欧美日韩国产综合一区二区| 国产精品欧美一级免费| 精品一区二区在线看| 欧美性大战久久久久久久蜜臀| 国产欧美日韩激情| 国产精品原创巨作av| 日韩欧美另类在线| 日韩国产在线观看| 欧美久久一二区| 一区二区三区波多野结衣在线观看 | 狠狠色丁香久久婷婷综| 欧美精品一级二级三级| 亚洲一区二区四区蜜桃| 99re热这里只有精品视频| 国产亚洲一区二区三区在线观看 | 日韩电影免费一区| 欧美二区三区的天堂| 夜夜揉揉日日人人青青一国产精品| 成人激情免费视频| 国产精品久久夜| www.久久精品| 国产精品成人午夜| 91性感美女视频| 亚洲国产综合91精品麻豆| 91久久奴性调教| 亚洲精品欧美激情| 欧美日韩一区二区三区免费看| 亚洲综合成人在线| 精品污污网站免费看| 亚洲午夜在线视频| 日韩一级片在线观看| 国产一区二区三区免费观看| 久久综合色8888| 成人午夜免费视频| 亚洲三级在线播放| 欧美日韩免费观看一区二区三区| 日韩国产在线观看| 国产日韩欧美在线一区| 99re热视频这里只精品| 亚洲国产一区二区视频| 91精品国产美女浴室洗澡无遮挡| 九九九久久久精品| 国产精品久久久久久久岛一牛影视| 97精品视频在线观看自产线路二| 亚洲免费观看高清完整版在线观看 | 日韩高清在线电影| 久久久久久久久久久久电影| www.99精品| 亚洲国产精品嫩草影院| 欧美成人艳星乳罩| 99久久精品免费精品国产| 亚洲第一在线综合网站| 欧美精品一区二区三区蜜桃| youjizz国产精品| 欧美bbbbb| 亚洲乱码国产乱码精品精98午夜| 欧美一级欧美三级| 99精品视频一区二区三区| 青青草原综合久久大伊人精品| 久久久久久97三级| 欧美日本视频在线| 成熟亚洲日本毛茸茸凸凹| 亚洲va天堂va国产va久| 国产亲近乱来精品视频| 亚洲欧美视频一区| 波波电影院一区二区三区| 天天av天天翘天天综合网 | 国产激情精品久久久第一区二区| 中文字幕日韩欧美一区二区三区| 欧美人伦禁忌dvd放荡欲情| 国产成人综合亚洲91猫咪| 亚洲va国产va欧美va观看| 国产欧美一区二区精品性| 欧美人妇做爰xxxⅹ性高电影| 丁香五精品蜜臀久久久久99网站| 美腿丝袜在线亚洲一区| 亚洲第一二三四区| 亚洲婷婷综合色高清在线| 久久久精品黄色| 久久久久久日产精品| 欧美一区二区三区婷婷月色| 欧美中文字幕一二三区视频| www.欧美精品一二区| 粉嫩绯色av一区二区在线观看 | 国产欧美视频一区二区| 欧美一区二区高清| 欧美日韩免费视频| 欧美二区在线观看| 欧美二区三区的天堂| 欧美天天综合网| 欧美三级日韩三级国产三级| 在线视频中文字幕一区二区| 91一区一区三区| 99精品国产一区二区三区不卡| 不卡一卡二卡三乱码免费网站| 成人激情开心网| 91免费精品国自产拍在线不卡| 97久久人人超碰| 91传媒视频在线播放| 在线视频综合导航| 欧美日本在线看| 91精品国产综合久久久久久久| 91精品国产综合久久精品app| 欧美裸体一区二区三区| 91精品婷婷国产综合久久竹菊| 欧美男同性恋视频网站| 欧美一区二区三区精品| 日韩精品一区二区三区老鸭窝| 日韩无一区二区| 久久精品欧美一区二区三区麻豆| 国产三级欧美三级| 中文字幕在线不卡视频| 亚洲一区自拍偷拍| 日本va欧美va精品| 国产呦萝稀缺另类资源| 99re66热这里只有精品3直播 | 日韩精品一区二区三区在线观看 | 国产精品久久久久永久免费观看| 中文字幕精品综合| 一区二区三区欧美视频| 水蜜桃久久夜色精品一区的特点| 另类欧美日韩国产在线| 国产成人亚洲精品青草天美| 色偷偷久久人人79超碰人人澡| 欧美天堂一区二区三区| 26uuu亚洲综合色欧美| 国产精品久久久久一区二区三区共| 亚洲国产欧美日韩另类综合| 麻豆精品新av中文字幕| 成人激情小说乱人伦| 91 com成人网| 国产精品久久久久毛片软件| 亚洲国产精品嫩草影院| 高清久久久久久| 欧美日韩另类国产亚洲欧美一级| 337p日本欧洲亚洲大胆色噜噜| 伊人夜夜躁av伊人久久| 韩国欧美国产1区| 欧美日韩日日夜夜| 综合久久久久久久| 国产精品99久久久久久似苏梦涵| 欧美丝袜丝nylons| 亚洲欧美激情插| 成人免费毛片aaaaa**| 欧美电影免费观看高清完整版在 |