zoukankan      html  css  js  c++  java
  • winsock 错误 0x0000274d 由于目标机器积极拒绝,无法连接问题解决

    一段简单的Conncet代码,却总是返回 0x0000274d 错误

    查了半天终于发现了问题。port忘记进行字节序转换了。

    应该是addr.sin_port=htons(port);

    问题解决了。

    目标机器上指定的端口上并没有服务,当然会返回积极拒绝。

    为了证实这一点,改一个再改一个错误的并不存在的端口号来试一下。

    也是返回这个错误。

    将服务端停掉,端口号正确也是返回这个错误。

    以后再遇到这个问题应该考虑的是连接参数是否正确以及目标服务器的指定端口有没有打开。

    WSADATA data;
    memset(
    &data,0,sizeof(data));
    WSAStartup(MAKEWORD(
    2,2),&data);
    s_
    =socket(AF_INET,SOCK_STREAM,0);
    SOCKADDR_IN addr;
    memset(
    &addr,0,sizeof(addr));
    addr.sin_family
    =AF_INET;
    addr.sin_addr.s_addr
    =inet_addr(ip);
    addr.sin_port
    =port;
    connect(s_,(sockaddr
    *)&addr,sizeof(addr));

      

    另外BBS上的这个帖子的讨论对解决这个问题很有启发:

    http://topic.csdn.net/t/20020518/18/733331.html

  • 相关阅读:
    树上DP
    区间dp
    [持续更新]学习并记忆 Linux 下的常用的命令
    区间dp
    codevs 2152
    树上DP入门题
    差分与前缀和
    POJ
    VJ
    Week 5: Object Oriented Programming 9. Classes and Inheritance Exercise: int set
  • 原文地址:https://www.cnblogs.com/oyjj/p/2132880.html
Copyright © 2011-2022 走看看