本节讲解 Windows 下 DLL 的加载,学习 Linux Socket 的读者可以跳过。WinSock(Windows Socket)编程依赖于系统提供的动态链接库(DLL),有两个版本:
- 较早的DLL是 wsock32.dll,大小为 28KB,对应的头文件为 winsock1.h;
- 最新的DLL是 ws2_32.dll,大小为 69KB,对应的头文件为 winsock2.h。
几乎所有的 Windows 操作系统都已经支持 ws2_32.dll,包括个人操作系统 Windows 95 OSR2、Windows 98、Windows Me、Windows 2000、XP、Vista、Win7、Win8、Win10 以及服务器操作系统 Windows NT 4.0 SP4、Windows Server 2003、Windows Server 2008 等,所以你可以毫不犹豫地使用最新的 ws2_32.dll。
使用DLL之前必须把DLL加载到当前程序,你可以在编译时加载,也可以在程序运行时加载,《 C语言高级教程 》中讲到了这两种加载方式,请猛击: 动态链接库DLL的加载:隐式加载(载入时加载)和显式加载(运行时加载) 。
这里使用
#pragma
命令,在编译时加载:
#pragma comment (lib, "ws2_32.lib")