资 源 简 介
环境:Windows XP SP 3、 VC++ 6.0、 Windows Server 2003 SDK
使用步骤:
1、下载解压之后,使用VC++ 6.0 IDE打开.dws文件
2、点击“!”按钮运行程序
3、如果一切正常会出现一个对话框,然后选择下拉框中的“服务端”启动服务器进程--接着点击“监听”按钮
4、然后再点击“!”按钮运行客户端进程
5、如果一切正常,那么选择下拉框中的“客户端”启动客户端进程--接着点击“连接”按钮,让客户端连接到socket服务器
6、在客户端的“消息”栏中输入信息,然后点击“发送”按钮
7、点击服务器端进程,应该可以看见客户端发送过来的消息,然后可以在“消息”栏中输入响应信息,然后点击“发送”按钮,此时会在客户端进程中看服务器端进程响应的信息
该示例是实现了一个客户端对象对应一个服务端对象的socket的网络编程--最简单的VC++的网络编程示例。该示使用主要是自定义一个类--它继承MFC库中CAsyncSocket类,然后重写OnAccept, OnSend, OnReceive和OnClose方法来实现一对一的VC++的socket网络编程。注意:自定义类关联应用向导生成的对话框类,需要在头文件中书写语句“class CHelloSocketDlg;”,并且在.cpp文件中写入语句“#include "HelloSocketDlg.h";”,否则编译不会通过!
本示例使用Dialog模式的UI是为方便说明socket编程,在对话框类的OnInitDialog方法有初始化的成员变量的注释说明,在自定义类中的注释非常详细。本人觉得MFC使用异步通信类CAsyncSocket实现Java中的ServerSocket类和Socket类的编程效果,是非常牛的!(虽然本人认为它还封装得不够OO--因为它封装得让使用者觉得“很傻很天真”)。