Chinaunix首页 | 论坛 | 博客
  • 博客访问: 588476
  • 博文数量: 752
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 5005
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:47
文章分类

全部博文(752)

文章存档

2011年(1)

2008年(751)

我的朋友

分类:

2008-10-13 16:52:02

dual:taskHnd = WSAAsyncBetHostByName(hWnd,wMsg,hostname,buf,buflen);
应该为:
taskHnd = WSAAsyncGetHostByName(hWnd,wMsg,hostname,buf,buflen);


 of((len==SOCKET_ERROR)&&(WSAGetLastError()==WSAWOULDBLOCK)){...}
应该为:
 if((len==SOCKET_ERROR)&&(WSAGetLastError()==WSAWOULDBLOCK)){...}


看在我如此细心阅读这篇文章,哪位大发给我关于用VC++ socket 编的聊天室的服务器端和客户端的程序,我非常感谢!!!!
(发表于2003-3-28 10:41:00)

sosoo:COPY MSDN
(发表于2003-8-30 11:20:00)

实况狐狸:作者怎么会说WINDOWS是一个“非抢占式”多任务操作系统!?我想他指的是win95之前的哪个版本的Windows吧?那就此推断这篇文章是什么时候写的了??
(发表于2004-1-8 16:15:00)

flysnoopy1984:这文章我别的网站上看到过~~~~
后面因该还有几片呢~~~

(发表于2004-1-16 15:32:00)

notkiss:是什么网站?楼上能否告知?
(发表于2004-3-31 1:17:00)

xiaziyao:一点建议:
    关于case UM_SOCK:
      switch(lParam)
      {
      case FD_READ:
          len = recv(wParam,lpBuffer,length,0);
          break;
      case FD_WRITE:
          while(send(wParam,lpBuffer,len,0)!=SOCKET_ERROR)
          break;
      }
      break;
这里在一般情况下不会出错,但是lparam是个32位的数据
但是关于WINSOCK非阻塞编程它在MSDN中是这样说的:
lparam低16位指定的是事件的类型,高16位是错误发生的
返回值。当有错误发生时,这个程序将存在严重的问题 

(发表于2005-5-29 20:23:00)

xiaziyao:补充:
应该使用LOWORD(lparam)

(发表于2005-5-29 20:24:00)

..........................................................................
--------------------next---------------------

阅读(242) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~