您的位置:首页 > 移动开发 > Android开发

Android-ndk, JNI, sockt32.cpp:INVALID_SOCKET解决

2013-06-06 11:02 309 查看
BOOL CSocket32::Create( UINT nSocketPort, int nSocketType ,LPCTSTR lpszSocketAddress )
{
//assert(m_hSocket == INVALID_SOCKET);//套接字必须首先初始化为空
m_hSocket = socket(AF_INET,nSocketType,IPPROTO_IP);//然后再创建
if(m_hSocket == INVALID_SOCKET)
{
char cTip[128] = {0};
sprintf(cTip,"%d,Hello from JNI !",errno);
LOGI(cTip);
m_nConnectFlag = -1;
return m_nConnectFlag;
}
sockaddr_in addr = {AF_INET,htons(nSocketPort)};
if (!lpszSocketAddress) //如果用户不指定,则系统分配
addr.sin_addr.s_addr = htonl(INADDR_ANY);
else
addr.sin_addr.s_addr = inet_addr(lpszSocketAddress);

if (!bind(m_hSocket,(sockaddr*)&addr,sizeof(addr)))
{
LOGI("createsocket32bind","right");
m_nConnectFlag = 0;
return m_nConnectFlag;//If no error occurs, bind returns zero
}
LOGI("createsocket32","closeright");
Close();

return m_nConnectFlag;
}


 

 

linux的查看INVALID_SOCKET方法是errno

Windows Socket和Linux Socket编程区别

INVALID_SOCKET错误码列表

  

错误码13 发现只是没加权限而已

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android socket JNI
相关文章推荐