我对有关温索克的几件事感到困惑。
首先,包括 Winsock2.h 与 winsock2.h ('w' 的大写)有什么区别
二、用ws2_32.lib链接wsock32.lib有什么区别?
我尝试了几种组合,它们导致编译时错误。谁能解释我使用什么背后的逻辑推理?
谢谢尼克
Winsock2.h
和之间没有区别winsock2.h
。文件名在典型的 Windows 文件系统上不区分大小写。该ws2_32.lib
文件适用于 Winsock 2,而wsock32.lib
适用于过时的旧版本。
如下所示:https://technet.microsoft.com/en-us/library/cc958787.aspx、 wsock32.dll 和 wsock.dll 是 w2_32.dll 的向后兼容外壳
您可以使用 wsock32.dll 与 Win95 兼容,或使用 wsock.dll 与 win3.11 兼容 :) 但通常它们被 Win95 和 Win3.11 程序用于与 win2K+ 兼容
wsock32.lib 和 w2_32.lib 包含从动态链接库中导出的函数和数据元素的列表。
注意:wsock32 和 ws_32 之间的一些差异可能是意料之外的。例如 wsock32 将运行 winsock 2.2 版 API——但要获得 2.0 版,您需要 w2_32。