首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

用socket从服务器端向客户端发送数据第二次发送总是异常

2012-09-25 
用socket从服务器端向客户端发送数据第二次发送总是错误LRESULT CMainDlg::OnBnClickedButton2(WORD /*wNo

用socket从服务器端向客户端发送数据第二次发送总是错误
LRESULT CMainDlg::OnBnClickedButton2(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
  int len=sizeof(SOCKADDR);

  SOCKET sockConn=accept(ServerSocket,(SOCKADDR*)&m_sockServerAddr,&len); 

  inet_ntoa(m_sockServerAddr.sin_addr);  


  if(send(sockConn,"123",sizeof("123")+1,0) == SOCKET_ERROR)//Image\n[111;222;333]\nDone\n
  {
  MessageBox(_T("发送错误!"));
  }
  return 0;
}

[解决办法]

C/C++ code
LRESULT CMainDlg::OnBnClickedButton2(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/){  int len=sizeof(SOCKADDR);  static bool bIsAccepted = false;  if(!bIsAccepted)  {     SOCKET sockConn=accept(ServerSocket,(SOCKADDR*)&m_sockServerAddr,&len);       if( sockConn != INVALID_SOCKET )     {         bIsAccepted  = true;         inet_ntoa(m_sockServerAddr.sin_addr);      }   }      if(send(sockConn,"123",sizeof("123")+1,0) == SOCKET_ERROR)//Image\n[111;222;333]\nDone\n  {  MessageBox(_T("发送错误!"));  }  return 0;} 

热点排行