没有合适的资源?快使用搜索试试~ 我知道了~
基于Visual C++的Winsock API研究.doc
5星 · 超过95%的资源 需积分: 9 14 下载量 84 浏览量
2010-03-08
20:07:03
上传
评论 1
收藏 52KB DOC 举报
温馨提示
试读
9页
基于Visual C++的Winsock API研究.doc基于Visual C++的Winsock API研究.doc
资源推荐
资源详情
资源评论
为了方便网络编程,90 年代初,由 Microsoft 联合了其他几家公司共同制定了
一套 WINDOWS 下的网络编程接口,即 Windows Sockets 规范,它不是一
种网络协议,而是一套开放的、支持多种协议的 Windows 下的网络编程接口。
现在的 Winsock 已经基本上实现了与协议无关,你可以使用 Winsock 来调用
多种协议的功能,但较常使用的是 TCP/IP 协议。Socket 实际在计算机中提供
了一个通信端口,可以通过这个端口与任何一个具有 Socket 接口的计算机通
信。应用程序在网络上传输,接收的信息都通过这个 Socket 接口来实现。
微软为 VC 定义了 Winsock 类如 CAsyncSocket 类和派生于
CAsyncSocket 的 CSocket 类,它们简单易用,读者朋友当然可以使用这些
类来实现自己的网络程序,但是为了更好的了解 Winsock API 编程技术,我们
这里探讨怎样使用底层的 API 函数实现简单的 Winsock 网络应用程式设计,
分别说明如何在 Server 端和 Client 端操作 Socket,实现基于 TCP/IP 的数据
传送,最后给出相关的源代码。
在 VC 中进行 WINSOCK 的 API 编程开发的时候,需要在项目中使用下面
三个文件,否则会出现编译错误。
1.WINSOCK.H: 这是 WINSOCK API 的头文件,需要包含在项目中。
2.WSOCK32.LIB: WINSOCK API 连接库文件。在使用中,一定要把它
作为项目的非缺省的连接库包含到项目文件中去。
3.WINSOCK.DLL: WINSOCK 的动态连接库,位于 WINDOWS 的安装
目录下。
一、服务器端操作 socket(套接字)
1)在初始化阶段调用 WSAStartup()
此函数在应用程序中初始化 Windows Sockets DLL ,只有此函数调用成
功后,应用程序才可以再调用其他 Windows Sockets DLL 中的 API 函数。在
程式中调用该函数的形式如下:WSAStartup((WORD)((1<<8|1),
(LPWSADATA)&WSAData),其中(1<<8|1)表示我们用的是
WinSocket1.1 版本,WSAata 用来存储系统传回的关于 WinSocket 的资料。
2)建立 Socket
初始化 WinSock 的动态连接库后,需要在服务器端建立一个监听的
Socket,为此可以调用 Socket()函数用来建立这个监听的 Socket,并定义此
Socket 所使用的通信协议。此函数调用成功返回 Socket 对象,失败则返回
INVALID_SOCKET(调用 WSAGetLastError()可得知原因,所有 WinSocket
的函数都可以使用这个函数来获取失败的原因)。
资源评论
- zlyong00182012-10-06从server和client两个角度分别简洁明了的分析了winsocket API的使用方法, 最后并对winsocket API进行了封装, 是很好的学习资料, 赞一个
- rabbit_19892012-04-26想学好VC,就必须要理解Windows程序内部运行机制,而API就是一个基础,这篇文档详细介绍了API各个方面的原理,包括建立Socket,绑定端口,数据的传送等
ADFFDSAFDSFDSF
- 粉丝: 0
- 资源: 22
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功