简单的socket通信问题
我的服务器端可客户端建立到连接后,服务器不断的响应有要求连接的消息,即使客户端都断开了,怎么也看不出问题来,我是用建立连接的方法 问题点数:0、回复次数:10Top
1 楼shager(玉面飞狐)回复于 2005-04-03 09:09:30 得分 0
LONG OnSerAccept(HWND hwnd,UINT Message,WPARAM wParam,LPARAM lParam)
{
if(LOWORD(lParam)==FD_ACCEPT)
{
for(int nCount=0;(nCount<5)&&(accept_sock[nCount]!=INVALID_SOCKET);nCount++);
accept_sock[nCount] = accept(ser_sock,(LPSOCKADDR)&client_addr,(LPINT)&nClient_Length);
nCount++;
}
处理FD_ACCEPT的函数如上,不知道有什么错误Top
2 楼wwwllg(野蛮人)回复于 2005-04-03 09:56:20 得分 0
调用OnSerAccept之前,把你的关联事件置成无信号状态。这样,不会因为没有置信号所以当下个while的时候,重复执行。Top
3 楼nuaawenlin(飘人)回复于 2005-04-03 14:11:01 得分 0
客户端断开响应的是FD_CLOSETop
4 楼shager(玉面飞狐)回复于 2005-04-03 19:38:51 得分 0
wwwllg(wwwllg) 没看懂你的意思,到底是该设成无信号,还是有信号,具体怎么做?Top
5 楼priestath()回复于 2005-04-04 17:35:40 得分 0
upTop
6 楼wwwllg(野蛮人)回复于 2005-04-06 17:28:51 得分 0
ResetEvent()Top
7 楼shager(玉面飞狐)回复于 2005-04-06 20:56:51 得分 0
我看了别人的代码的,和我的一样,但是我的就是有问题
简单来说吧,如果要建立一个简单连接,该怎么做?
从建立socket到bind,listen,wsaasyncselect,accept,以及他们的顺序是怎样的Top
8 楼shager(玉面飞狐)回复于 2005-04-06 21:00:26 得分 0
如果有必要的话,我把我的源代码放上来,有没有人愿意试试?Top
9 楼microgiant(技术已死,有事烧纸)回复于 2005-04-07 00:30:01 得分 0
wsaasyncselect是不是一直是FD_CONNECT的消息哦Top
10 楼shager(玉面飞狐)回复于 2005-04-07 09:55:06 得分 0
我都没有用FD_CONNECT,我只用了FD_ACCEPT一个,可就连个连接都搞不掂Top




