主题 : mini2440 的socket问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 4913
精华: 0
发帖: 1
金钱: 10 两
威望: 10 点
综合积分: 2 分
注册时间: 2009-04-03
最后登录: 2009-05-19
楼主  发表于: 2009-05-19 16:06

 mini2440 的socket问题

开发板是wince5,用一台pc机做TCP服务器,在开发板上无法连接到服务器,同样的程序在另一台pc机上连接服务器就没有问题。连接代码如下:
    if(WSAStartup(MAKEWORD(1,1), &wsaData)!=0)
    {
        AfxMessageBox(_T("初始化Socket失败!"));
        return FALSE;
    }
    m_SeverSock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP) ;
    if(INVALID_SOCKET==m_SeverSock)
    {
        WSACleanup();
        closesocket(m_SeverSock);
        return 0;
    }
    SOCKADDR_IN m_RemoteAddr;
    DWORD ipaddress = inet_addr("192.168.0.204");
    m_RemoteAddr.sin_family = AF_INET;      
    m_RemoteAddr.sin_port = htons(6000);
    m_RemoteAddr.sin_addr.s_addr=ipaddress;
    int ret =connect(m_SeverSock,(struct sockaddr *)&m_RemoteAddr, sizeof(m_RemoteAddr));
    if (ret == SOCKET_ERROR)
    {
        DWORD dw=GetLastError();
        CString str;
        str.Format(_T("%d"),dw);
        AfxMessageBox(str);
    }
可以排除网线原因。在pc机上ping开发板正常,运行telnet登陆开发板也正常,但就是无法从开发板连接到外部。不知道什么原因。另连接返回的 错误码事10060(服务器无响应),不知有人遇到过这个问题没?