11

我对有关温索克的几件事感到困惑。

首先,包括 Winsock2.h 与 winsock2.h ('w' 的大写)有什么区别

二、用ws2_32.lib链接wsock32.lib有什么区别?

我尝试了几种组合,它们导致编译时错误。谁能解释我使用什么背后的逻辑推理?

谢谢尼克

4

2 回答 2

14

Winsock2.h和之间没有区别winsock2.h。文件名在典型的 Windows 文件系统上不区分大小写。该ws2_32.lib文件适用于 Winsock 2,而wsock32.lib适用于过时的旧版本。

于 2013-07-22T21:20:09.093 回答
7

如下所示: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。

于 2015-07-27T02:27:35.097 回答