关于socket收数据的问题?
我也来顶一下,顺便问个问题啊?:(
为什么?我的socket连接上后就是收不到数据,错误号10038---->socket无效,大家看看我的代码
好嘛,郁闷死了:(
LRESULT CRundllDlg::OnStMessage(WPARAM wParam,LPARAM lParam){
switch(lParam)
{
case FD_ACCEPT:
int tmp;
tmp=sizeof(client);
if(this->ss=accept(this->Server_sock,(SOCKADDR*)&client,&tmp)==INVALID_SOCKET )
{
AfxMessageBox("accept fialed");
}
AfxMessageBox(_itoa(ntohs(client.sin_port),a,10));//这里弹出的内容是正确的
AfxMessageBox(inet_ntoa(client.sin_addr));
break;
case FD_READ:
//fd_set fdr;
//FD_ZERO(&fdr);
//FD_SET(ss,&fdr);
while(1)
{
char a[10];
Len=recv(this->ss,abuffer,sizeof(abuffer),0);
if(Len==SOCKET_ERROR){
int temp=GetLastError();
AfxMessageBox(_itoa(temp,a,10));
break;
}
if(Len>0)
{
AfxMessageBox("Write");
}
}
break;}
return false;
}
客户端发送是成功的,难道在accept时还要做什么操作?小弟第1次用socket又没书(我看书上也就这么写的:))请高人指点指点啊?谢谢
最好在给点代码啊,:)