简单的网络聊天程序,MFC实现

来源:互联网 发布:2005数据库图标 编辑:程序博客网 时间:2024/04/30 11:34

       CAsyncSocket类是MFCwindows socket的基本封装,而CSocket类是更深层次的封装,CSocket类派生与CAsyncSocket类。CSocket类提供了方便的套接字的编程,而CAsyncSocket类提供了更加灵活的套接字的编程。CAsyncSocket类封装了几个消息响应的虚函数,如果有类需要派生于CAsyncSocket类,则需要重写OnAccept OnConnect OnReceive OnClose消息响应函数。这些消息响应函数的响应调用有两种情况:1.响应函数的调用,如Accept调用OnAccept等;2.。程序获得对方的响应请求,如当客户机发起一个连接时,就会在服务器端调用OnAccept函数。

      

       这是一个简单的聊天程序,在一个对话框中完成了服务器的功能以及客户机的功能。并且只能一个服务器连接一个客户机。

 

程序比较简单,首先在OnInitDailog中做一些初始的显示设置,比如连接端口,服务器名称

选择客户机还是服务器时做一些处理

在按下监听或是连接是,如果是服务器端,则创建套接字类Create,设置监听Listen。如果是客户机,则创建套接字类Create,然后连接Connect

然后当客户机的连接请求到来是服务器自动调用OnAccept函数,处理到来的消息

而在客户机端则会自动调用OnConnect函数

当消息到来,触发OnReceive函数的调用

在发送消息时。调用按钮按下的响应函数,将消息发送出去

如果是在客户机按下断开按钮,则调用OnClose函数处理消息

具体的程序源码在资源中可获取

 
原创粉丝点击