WINSOCK.H和WinSock2.h其使用?(WinSock.h & WinSock2.h wh

2019-08-05 03:07发布

有谁知道WINSOCK.H和WinSock2.h之间的差异。 我知道他们不使用相同的库(.LIB),但我不知道是否只有有WinSock2增加了新的功能,或者它也提高了的WinSock 1种功能。 我与IP / TCP套接字的工作,并希望管理与选择超时()。 我还使用多个线程在同一时间管理不是只有一个客户多个。 我应该继续使用的WinSock 1.1或者我应该移动到的Winsock 2? 提前致谢。

Answer 1:

你或许应该使用winsock2.h

几个要点:

  • winsock.h应使用wsock32.libwinsock2.h应使用ws2_32.lib
  • winsock.hwinsock2.h不应该在同一个项目中, winsock2.h取代winsock.h ,而不是扩展它。
  • winsock.h如果你的目标,如Windows 95 / Windows NT的3.5老版本的Windows时,才应使用。

微软的实现

版本1.1( winsock.h Winsock控件)用于Windows的附加包(称为金刚狼)供给的工作组(代号为雪球)。 这是Windows 95和Windows NT是从3.5版本及以后的一个组成部分(Windows NT的版本3.1的初始商用版本,包括仅基于AT&T UNIX System V的“流专有的和非常不完整的TCP / IP实现的“API。

2.1版winsock2.h Winsock控件)在附加软件包的Windows 95。这是Windows 98中的一个组成部分,Windows NT 4.0的供给,以及所有后续的Windows版本。 Winsock的2.X的最新版本已交付使用新的Windows版本或服务包的一部分。

不Winsock2的添加功能?

的Winsock 2通过被称为分层服务提供商(LSP)的机制是可扩展的。 的Winsock的LSP可用于宽范围的有用的目的,包括因特网家长控制,网页内容过滤,QoS等。



Answer 2:

WINSOCK.H也可把代码编译在Windows的16位版本开始生活。 你应该总是使用Winsock2.h和链接新项目WS2_32.LIB。



文章来源: WinSock.h & WinSock2.h which to use?