前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >winsock库

winsock库

作者头像
用户1154259
发布2018-01-17 12:13:45
5930
发布2018-01-17 12:13:45
举报

加载Winsock库函数 : WSAStartup

代码语言:javascript
复制
1 int WSAStartup(
2                WORD wVersionRequested,//指定想要加载的winsock库
3                LPWSADATA lpWSAData//指向 WSADATA的指针,用来返回DLL库的详细信息
4 );

WSADat头结构

代码语言:javascript
复制
 1 typedef struct WSAData
 2 {
 3     WORD wVersion;    //库文件建议应用程序使用的版本
 4     WORD wHighVersion;    //库文件支持的最高版本
 5     char szDescription[WSADESCRIPTION_LEN+1];    //库描述字符串
 6     char szSystemStatus[WSASYS_STATUS_LEN+1];    //系统状态字符串
 7     unsigned short iMaxSockets;    //同时支持的最大套接字的数量
 8     unsigned short iMaxUdpDg;    //2.0版中已废弃的参数
 9     char FAR* lpVendorInfo;    //已废弃的参数
10 }WSADATA,FAR* LOWSADATA;

每一个WSAStart调用必须对应一个队WSAClean的调用,这个函数用来释放winsock库

代码语言:javascript
复制
int WSACleanup(void);

如果想使用winsock库,应该包含对应的库文件

代码语言:javascript
复制
1 #pragma comment(lib,"WS2_32")

以后封装的经常用到的CInitSock类

代码语言:javascript
复制
 1 #include <winsock2.h>
 2 #pragma comment(lib,"WS2_32")
 3 class CInitSock
 4 {
 5 public:
 6     CInitSock(BYTE minorVer=2,BYTE majorVer=2)
 7     {
 8         WSADATA wsaData;
 9         WORD sockVersion = MAKEWORD(minorVer,majorVer);
10         if(::WSAStartup(sockVersion,&wsaData)!=0)
11         {
12             exit(0);
13         }
14     }
15     ~CInitSock()
16     {
17         ::WSACleanup();
18     }
19 };
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-09-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档