CSDN专家博客精华版

为人民服务!
  首页  :: 新随笔  :: 管理

Winsock网络通信

Posted on 2007-12-17 11:22  csdnexpert  阅读(164)  评论(0)    收藏  举报

Winsock网络通信

这里我希望和大家探讨一下Winsock网上通信的程序,由于因特网的普及,越来越多的程序具有了在网上与其他程序通信的功能.其实所有这些功能都建立在Winsock接口之上,应用程序执行大多数网络通信的基本对象称为套接口或软插口(Socket).使用MFC Winsocket类添加网络通信功能就相对容易些.基本类CAsyncSocket提供全面的由事件驱动的Socket通信能力,你可以创建自己派生的Socket类来捕获和响应每个事件.我建议您先把CAsyncSocket类熟悉一遍.这里给出一个程序通信的例子:首先CAsyncSocket类中有一些事件通知函数可以调用,
OnAccept监听方调用此函数表对方的连接请求正等待被接受
OnClose表示连接的另一端程序已关闭.
OnConnect表示与另一端程序的连接已完成.
OnOutofBandData表示收到带外数据
OnReceive表示通过Socket连接的数据已收到
OnSend表示Socket已准备好发送数据

本例之所以要派生一个类CMySocket,是希望通过覆盖以上的通知函数来捕获激活的事件.在通过父对话框的指针来执行相应的操作.具体的操作可见本站下载的代码.编译后,您可以启动程序的两份拷贝,一个在Server端,一个在Client端,先在Server端设置监听模式,再在Client端连接,这两个程序就可互发信息了,看看像不像ICQ!

 

作者:朱明 未经许可 不得转载

下载本例代码(20k)

 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=3508