小编Art*_*are的帖子

C++:Windows 套接字错误 10013

突然间,我的电脑不再让我绑定到套接字。它昨晚正常工作,当我在编码几个小时后去测试某个功能时,没有任何绑定。

其他事实:

  • 相同的代码可以在我的其他电脑上运行,因此它显然是我的主要开发机器所独有的。
  • 绑定到 TCP 端口 8080(应用程序有一个迷你 HTTP 服务器)确实有效。
  • 我编写的其他监听相同 63000 范围端口的应用程序在这台计算机上也失败了。

这是一些失败的代码:

  err = WSAStartup(wVersionRequested, &wsaData);
  if(err == 0)
  {
    aSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    if(aSocket != INVALID_SOCKET)
    {
      SOCKADDR_IN        ReceiverAddr;
      // The IPv4 family
      ReceiverAddr.sin_family = AF_INET;
      // Port no. 63939
      ReceiverAddr.sin_port = htons(iPort);
      // From all interface (0.0.0.0)
      ReceiverAddr.sin_addr.s_addr = htonl(INADDR_ANY);
      err = bind(aSocket, (SOCKADDR*)&ReceiverAddr, sizeof(ReceiverAddr));
      if(err == 0)
      {
Run Code Online (Sandbox Code Playgroud)

我努力了:

  • 禁用我的 Windows 防火墙(按照常见修复建议)
  • 禁用 Windows Defender
  • 以管理员身份运行应用程序
  • 重新启动
  • 禁用/启用我的网络驱动程序
  • 重命名有问题的应用程序(以防防火墙设置为禁止)
  • 恢复到应用程序的已知良好版本
  • 尝试我编写的其他一些已知良好的网络应用程序(它们也失败并显示 10013)
  • 尝试同一区域的不同端口
  • 将我的网络类型从“公共”更改为“家庭”

如果我运行 …

c++ sockets winsock

5
推荐指数
1
解决办法
8621
查看次数

标签 统计

c++ ×1

sockets ×1

winsock ×1