Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows Connect():连接时WSAECONN未融合_Windows_Sockets - Fatal编程技术网

Windows Connect():连接时WSAECONN未融合

Windows Connect():连接时WSAECONN未融合,windows,sockets,Windows,Sockets,我正在尝试使用connect api连接到设备。它给了我一个错误。 当我连接了两台设备并试图连接其中一台设备时,就会发生这种情况。如果我只连接了一个设备,那么CONNECTNO可以正常工作 你们谁能告诉我这里的问题吗 这是我的密码: sockaddr_in my_addr; my_addr.sin_family = (USHORT)AF_INET ; my_addr.sin_port = htons((USHORT)host_port); memset(&(my_addr.sin_z

我正在尝试使用connect api连接到设备。它给了我一个错误。 当我连接了两台设备并试图连接其中一台设备时,就会发生这种情况。如果我只连接了一个设备,那么CONNECTNO可以正常工作

你们谁能告诉我这里的问题吗

这是我的密码:

sockaddr_in my_addr;

my_addr.sin_family = (USHORT)AF_INET ;
my_addr.sin_port = htons((USHORT)host_port);

memset(&(my_addr.sin_zero), 0, (size_t)8);
my_addr.sin_addr.s_addr = inet_addr(pHostName);

if (connect( (SOCKET)*uiSocket, (struct sockaddr*)&my_addr, 
    sizeof(my_addr)) == SOCKET_ERROR )
{
    int err = WSAGetLastError();
    fprintf(stderr, "Error connecting socket %d\n", WSAGetLastError());
    closeCxn();
    return false;
}

谢谢。

通常eConnRefuse表示您试图连接的计算机拒绝接受连接。通常的原因是目标计算机上没有程序侦听指定的端口

您可以通过从DOS提示符运行telnet到同一主机和端口来确认这种情况,例如:

telnet 192.168.1.99 1234


(当然,用适当的IP地址和端口号替换上面的示例参数)。如果telnet使用“拒绝连接”方法立即退出,则您知道问题出在远程计算机上。如果它连接并保持连接状态,则本地计算机的程序更有可能出现问题。

这是否意味着该电脑存在?我们试图通过建立TCP连接ping PC,只是为了知道这是在网络上,如果我们遇到这样的错误,那么计算机是开着的,对吗?ECONREFUSE表示TCP连接数据包到达了远程PC,远程PC回复的数据包表明它不愿意在您指定的端口上接受TCP连接。所以,是的。