2006耳第8期
中图分类号 :TN919.3 文献标识码 :A 文章编号 :1009—2552(2006}08一OO96—04
Visual C++6.0环 境下 Winsock的研究与应用
任志考,李朝玲
(青岛科技大学信息学院,青岛 266061)
摘 要 :首先对 Visual C++6.0环境下 Winsock API函数进行研 究分析和 比较 ,并且结合 TCP/IP
和 UDP协议进行对比分析 。然后研究 Winsock网络通信的基本方法和步骤 ,同时使用扩展的 UDP
协议 实现在 Intemet环境下大问题文件的传 送和接 收过程 。最后给 出 了部分程 序 的代码 。
关键词 :Winsock;,I℃P/II);UDP;网络通信
Application and research of W insock on Visual C ++6.0
REN 2 .kao.LI Zhao-ling
(0Dlkge 0fInformation,Ongaao Univer ̄ty of Science& TI,dI咖蛔 r,Ongaao 266061,China)
Abstract: Comparison and analysis research of W insock API functions on Visual C++ 6.0 are given in this
paper.an d the contrastive analysis is made with TCP/IP an d UDP.The basic methods an d steps of the W lIl—
sock network communication are studied.At the san'le time,the extended UDP is given to carry out the send—
ing and receiving of the big file on Internet,and some pID罢 加ming codes are given at last.
Key words: W insock TCP/IP; UDP; netw ork communication ’
1 引言
为了方便 网络编程 ,由 Microsoft等公司共同制
定了一 套 Windows下 的 网络 编程接 口,即 Windows
Sockets规范 ,它不是一种 网络协议 ,而是一套开放
的、支持多 种协议 的 Windows 下的 网络 编程接 口。
现在的 Winsock已经基本上实现 了与协议无关 ,可
以使用 Winsock来调用多种协议的功能 ,但较常使
用的是 TCP/IP协议 和 UDP协议 。Socket实际在计
算机中提供了一个通信端I=I(如 3000,象 QQ那样 ),
可以通过这个端 口与任何一个具有 Socket接 口的计
算机通信 。应用程序在网络上传输 ,接收的信息都
通过这个 Socket接 口来实现。
Visual C++6.0定义 了 Winsoek类 如 CAsync—
Socket类 和派生于 CAsyncSocket的 C.Socket类…,可
以使用这 些类 来实 现 自己的 网络 程序 ,为 了了解
Winsock API编程技 术 ,这 里探讨怎样 使用底 层 的
API函数实现简单的 Winsock网络应用程式设计 ,分
别说明如何在服务器端 (发送端 )和客户端(接收端 )
操作 Socket,实现基 于 TCP/IP或 UDP的数 据传送 ,
并且给出 UDP通信应用相关的源代码 。 .
一
96 一
在 Visual C++6.0中进行 WINSOCK的API编程
开发的时候,需要在程序中使用下面三个文件,否则
会出现编译错误 。
① WINSOCK.H:这是 WINSOCK API的头文件 ,
需要包含在项 目中(include<winsock.h>)。
② WSOCK32.LIB:WINSOCK API连接库文件。
在使用中,一定要把它作为项 目的非缺省的连接库
包含到项 目文件中去。
③ WINSOCK.DLL:WINSOCK的动态连接库 ,位
于 WIND rS的安装 目录下。
1.1 客户 机/lib务器模 式
在 TCP/IP应用中,如何采用客户机朋彤碉嚣模式。
客户机一方 ,TCP/IP应用程序功能如下:
(1)打开通信信道(申请一套接字 ),并连接到服
务器在主机的保留端 口,该端 口对应服务器 的 TCP/
II)进程 。
(2)向服务器发 出请求报文 ,等待接收应答。
收稿 日期 :2OO6—01一l9
作者简介 :任志考(1968一),男 ,工程 师 ,研究方 向为网络及多 媒体
技术。
维普资讯 http://www.cqvip.com
评论0