13得票1回答
close()和closesocket()可以互换使用吗?

我在这里看到很多答案都建议使用 close() 来销毁socket,但我所使用的来自msdn 的指南让我使用 closesocket()。我想知道两者之间是否有区别,以及使用其中一个或另一个的原因。 在这两种情况下,我都看到建议使用 shutdown(),所以都可以正常使用。

12得票2回答
如何在mingw编译器中使用inet_pton()函数?

我正尝试将一个已经兼容IPv4的C程序添加IPv6兼容性,但编译器出现了问题。我目前使用mingw32-gcc-4.6.2进行编译,在使用inet_pton函数时会出现链接错误。 我尝试让它在vista上编译(因为inet_pton是vista函数),但似乎整个函数在mingw中都找不到。 ...

12得票3回答
Windows:基于事件的重叠IO与IO完成端口,现实世界性能

我正在构建一个服务器应用,并研究使用重叠IO来处理套接字。我发现有些人说“永远不要使用hEvent”,或者“IO完成端口会更快”等等,但是没有人解释为什么不能使用hEvent,也没有提供任何有关完成端口速度更快的真实数据或数字,以及相差多少。 hEvent与WaitForMultipleOb...

10得票1回答
gethostbyname显示“没有此服务已知”。在指定的命名空间中找不到该服务。

在Windows中,这段简单的代码会导致gethostbyname输出一个令人讨厌的调试信息。 #include <stdio.h> #include <winsock.h> int main() { WSADATA wsaData; WSAStart...

9得票4回答
所有调用getaddrinfo()函数返回11001错误代码。

我遇到了连接网络设备的问题。每当我调用getaddrinfo()函数时,它返回11001。我已经用IP_ADDRESS字符串中的许多不同IP进行了检查。我使用nslookup检查了所有无法工作的数字,大多数都存在。 getaddrinfo-returns-always-11001-host...

9得票1回答
IPPROTO_RM在accept调用期间阻塞

这个问题类似于https://stackoverflow.com/questions/11650328/using-reliable-multicast-pragmatic-general-multicast-not-returning-from-accept,但我的代码与它略有不同,因此可能...

9得票1回答
我是否需要链接Ws2_32.lib库?

所有在MSDN上的Winsock2示例都表明我必须像以下这样静态链接Winsock2库: #pragma comment(lib, "ws2_32.lib") 确保构建环境链接到Winsock库文件?>Ws2_32.lib。使用Winsock的应用程序必须链接到Ws2_32.lib...

8得票1回答
如何在Winsock2 C++中停止/重新启动服务器套接字的监听和接受?

我在Visual Studio Pro C ++中创建了一个套接字(Winsock2)来监听端口连接(TCP)。它完美地运行,但我让它在自己的线程中运行,并希望能够关闭它,并希望稍后重新启动它。我可以终止线程而不出现问题,但这样做并不能阻止套接字接受新的客户端连接(也就是说,它仍然在接受之前关...

8得票2回答
使用非阻塞UDP读取时缺少消息

我在使用两台主机之间的udp非阻塞读取时遇到了消息丢失的问题。发送者位于linux上,接收者位于winxp上。以下python示例展示了这个问题。 这里有三个脚本用于展示这个问题。 send.py: import socket, sys s = socket.socket(socket.AF...

8得票3回答
为特定套接字增加TCP接收窗口

如何增加特定套接字的TCP接收窗口大小? - 我知道可以通过设置注册表项TcpWindowSize来增加所有套接字的接收窗口大小,但如何只针对某个特定的套接字进行操作? 根据MSFT的文档,方法是: 调用Windows套接字函数setsockopt,在每个套接字上设置接收窗口。 但在se...