一:SOCKET简介
80年代初,美国政府的高级研究工程机构(ARPA)给加利福尼亚大学Berkeley分校
提供了资金,让他们在UNIX操作系统下实现TCP/IP协议。在这个项目中,研究人员
为TCP/IP网络通信开发了一个API(应用程序接口)。这个API称为Socket接口(套接字)。
今天,SOCKET接口是TCP/IP网络最为通用的API,也是在INTERNET上进行应用开发
最为通用的API。
90年代初,由Microsoft联合了其他几家公司共同制定了一套WINDOWS下的网络编程
接口,即WindowsSockets规范。它是BerkeleySockets的重要扩充,主要是增加了一
些异步函数,并增加了符合Windows消息驱动特性的网络事件异步选择机制。
WINDOWSSOCKETS规范是一套开放的、支持多种协议的Windows下的网络编程接口。
从1991年的1.0版到1995年的2.0.8版,经过不断完善并在Intel、Microsoft、Sun、
SGI、Informix、Novell等公司的全力支持下,已成为Windows网络编程的事实上的
标准。目前,在实际应用中的WINDOWSSOKCETS规范主要有1.1版和2.0版。两者的最
重要区别是1.1版只支持TCP/IP协议,而2.0版可以支持多协议。2.0版有良好的向后
兼容性,任何使用1.1版的源代码,二进制文件,应用程序都可以不加修改地在2.0
规范下使用。
SOCKET实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有SOCKET
接口的计算机通信。应用程序在网络上传输,接收的信息都通过这个SOCKET接口来实
现。在应用开发中就像使用文件句柄一样,可以对SOCKET句柄进行读,写操作。
二:基于WINDOWS SOCKET的应用开发介绍。
在WINDOWS95/98,WINDOWSNT进行WINSOCK开发使用的编程语言有很多,VC++,JAVA,
DELPHI,VB等。其中VC时使用最普遍,和WINSOCK结合最紧密的。并且VC++对原来的
WindowsSockets库函数进行了一系列封装,继而产生了CAsynSocket、CSocket、
C