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

来源:互联网 发布:servlet获取文本框数据 编辑:程序博客网 时间:2024/06/05 03:59
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);elseaddr.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 发现只是没加权限而已

 

原创粉丝点击