自动初始化 winsock

简介: 自动初始化 winsock

自动初始化 winsock

#pragma once

#ifdef _WIN32
#include <WinSock2.h>  
#pragma comment(lib,"ws2_32.lib")  
//typedef unsigned char  BYTE;
//typedef unsigned short WORD;
//#define MAKEWORD(a, b) ((WORD) (((BYTE) (a)) | ((WORD) ((BYTE) (b))) << 8))  
#endif // !_WIN32


class CWinSockInit
{
public:
    CWinSockInit(BYTE minorVer = 2, BYTE majorVer = 2)
    {
#ifdef _WIN32
        WSADATA wsaData;
        WORD sockVersion = MAKEWORD(minorVer, majorVer);
        if (::WSAStartup(sockVersion, &wsaData) != 0)
        {
            exit(0);
        }
#endif
    }

    inline ~CWinSockInit()
    {
#ifdef _WIN32
        ::WSACleanup();
#endif
    }
};

目录
相关文章
|
9月前
|
消息中间件 Kubernetes NoSQL
实现上下文保存和恢复的一种方式--setjmp与longjmp
实现上下文保存和恢复的一种方式--setjmp与longjmp
|
数据建模 C++ 容器
调试实战 —— dll 加载失败之全局变量初始化篇
调试实战 —— dll 加载失败之全局变量初始化篇
|
6月前
如何初始化PoolingHttpClientConnectionManager
【8月更文挑战第26天】如何初始化PoolingHttpClientConnectionManager
352 7
|
5月前
|
调度 项目管理
内核初始化的过程
【9月更文挑战第13天】内核启动始于函数 `start_kernel()`,该函数位于 `init/main.c` 文件中,包含各类初始化函数。操作系统首先创建 0 号进程 `init_task`,随后初始化中断处理、内存管理、调度模块及虚拟文件系统 VFS。
v4l2 驱动程序初始化
v4l2 驱动程序初始化
96 0
Qt窗口关闭和应用程序停止是否调用析构函数的一些说明
Qt窗口关闭和应用程序停止是否调用析构函数的一些说明
Qt窗口关闭和应用程序停止是否调用析构函数的一些说明
|
算法 安全 Java
深入理解 NioEventLoopGroup初始化
深入理解 NioEventLoopGroup初始化
186 0
|
网络安全 数据安全/隐私保护
M12-2 初始化
M12-2 初始化
174 0

热门文章

最新文章