一脑的糊涂,有人帮忙给将一下么?winsock的问题

tdnetdog 2003-10-19 07:37:43
我用的是datagram方式。
在一个button的onclick中加入了一些代码如下:
char a[20]={0};
long temp=0l;
temp=sizeof(local);
recvfrom(sServerSock, a, 20, MSG_PEEK, (struct sockaddr*) &local, (int far*)&temp);
MessageBox(a, "", MB_OK);
想要从client端接受数据然后显示出来。
可是总是还没有从客户端发就已经显示a了,而且是""。
书上说recvfrom()会终止一个线程,直到一个数据报被接受。
可是我这里好像并没有什么终止的迹象阿???:(
那位过来人能给指点一下么。 不胜感谢。
...全文
27 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
studyingpersons 2003-10-23
  • 打赏
  • 举报
回复
TO tdnetdog (新兴小菜弟):
首先,我向你道歉,我不应该说话如此粗鲁,请你原谅我的无礼。
然后,我建议你多看看《Windows网络编程技术》这本书的第八章,里面详细的介绍了Winsock的两种模式:阻塞模式和非阻塞模式,还有五种套接字I/O模型。我想这些对你学习网络编程很重要!
tdnetdog 2003-10-20
  • 打赏
  • 举报
回复
楼上的老兄尽管说话并不客气。
但还是谢谢了,不过这个问题已经解决了,尽信书不如无书。
但当然也要参考书本了!要不怎么能从别人那里学来东西呢?
studyingpersons 2003-10-19
  • 打赏
  • 举报
回复
<<<<书上说recvfrom()会终止一个线程,直到一个数据报被接受。
<<<<可是我这里好像并没有什么终止的迹象阿???:(
死抠书本有用吗???学东西别太死板!!!
很明显,并没有终止线程。所以你要判断一下recvfrom的返回值,如果有发送过来的数据,则显示之。
datianshi 2003-10-19
  • 打赏
  • 举报
回复
你这个是一个发送端是一个接收端,你的调试以下~!!

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧