未解决的外部“WSADuplicateSocketW”链接错误

时间:2015-08-18 09:42:12

标签: c++builder

我遇到WSADuplicateSocket函数链接问题。存在Ws2_32.lib,库路径设置正确。 WSADuplicateSocket是否支持Windows 7?可以在没有WSADuplicateSocket的情况下将套接字传递给子进程吗?

IDE:C ++ Builder XE5,操作系统:Windows 7

1 个答案:

答案 0 :(得分:0)

  

WSADuplicateSocket是否支持Windows 7?

但这不是Windows 7问题。这是一个IDE /项目问题。您ws2_32.lib和/或$(BDS)\lib\win32\release\psdk文件夹中的$(BDS)\lib\win32\release副本(项目所链接的任何一个)都不包含WSADuplicateSocketW的符号,或者您不是实际上将ws2_32.lib链接到您的项目中。这些都会导致链接器抱怨。我的猜测是后者。

我检查了XE2和XE5中的.lib个文件,两个版本中都存在WSADuplicateSocketW符号。因此,请确保您实际链接到ws2_32.lib并且没有错误/损坏的安装。如果需要,您可以使用命令行IMPLIB.EXE工具从Windows文件夹中的ws2_32.lib创建新的ws2_32.dll文件。

  

可以在没有WSADuplicateSocket的情况下将套接字传递给子进程吗?

没有