开发板是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(服务器无响应),不知有人遇到过这个问题没?