Windows socket error: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。(10048), on API 'bind'

有些人在架设传世单机的时候,会遇到引擎或者登陆器报错:

Windows socket error: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。

如下图所示:(登陆器的没截图)




原因:

引擎或者登陆器所需要的端口被占。

情况1: 一般为重复开启同个引擎会报此错。

情况2: 不排除为坑爹的软件占用单机引擎端口。


解决方法:

对于情况1,关闭所有引擎,删除所有登陆器进程,再次开启即可。或者直接重启可消除。

对于情况2,你需要查找出占用你的端口的软件。简单方法为退出所有无关的软件,基本可以消除影响。我遇到过的坑爹软件:风行播放器,它的升级程序进程占用登陆器端口。


PS:

神马,仍然不能解决你的问题?请评论,我会及时查看。

==>传世单机架设错误汇总






  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
可以使用C语言中的socket库来实现。以下是一个简单的示例代码: ``` #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #define BUFFER_SIZE 1024 int main(int argc, char *argv[]) { int sockfd, portno, n; struct sockaddr_in serv_addr; struct hostent *server; char buffer[BUFFER_SIZE]; // 检查命令行参数 if (argc < 3) { fprintf(stderr,"usage %s hostname port\n", argv[0]); exit(1); } // 创建套接字 sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd < 0) { perror("ERROR opening socket"); exit(1); } // 获取服务器地址 server = gethostbyname(argv[1]); if (server == NULL) { fprintf(stderr,"ERROR, no such host\n"); exit(1); } // 设置服务器地址 bzero((char *) &serv_addr, sizeof(serv_addr)); portno = atoi(argv[2]); serv_addr.sin_family = AF_INET; bcopy((char *)server->h_addr, (char *)&serv_addr.sin_addr.s_addr, server->h_length); serv_addr.sin_port = htons(portno); // 连接服务器 if (connect(sockfd,(struct sockaddr *) &serv_addr,sizeof(serv_addr)) < 0) { perror("ERROR connecting"); exit(1); } // 读取HTTP协议中每行数据并创建字符串进行保存 while (1) { bzero(buffer, BUFFER_SIZE); n = read(sockfd, buffer, BUFFER_SIZE - 1); if (n < 0) { perror("ERROR reading from socket"); exit(1); } if (n == 0) { // 连接关闭 break; } printf("%s", buffer); // 在这里可以对每行数据进行处理并保存 } // 关闭套接字 close(sockfd); return 0; } ``` 在上面的代码中,首先通过命令行参数获取服务器的地址端口号,然后创建一个套接字并连接到服务器。在连接成功后,使用循环读取HTTP协议中的每行数据,对每行数据进行处理并保存即可。最后关闭套接字

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值