利用CAsyncSocket 类编程 – 客户端程序 1 / 16 利用CAsyncSocket 类编程 – 客户端程序 一、编程思路: 1. 建立工作区(解决方案):CAsyncSocket 通信示例 2. 为服务器建立工程(项目):TalkS 3. 为客户端建立工程(项目):TalkC 操作步骤: 文件 > 新建 > 项目 > Visual C++ > MFC > MFC 应用程序 在“名称”后输入:TalkC 在“解决方案名称”后输入:CAsyncSocket 通信示例 如下图所示: 单击“确定”按钮出现: 利用CAsyncSocket 类编程 – 客户端程序 2 / 16 单击“下一步”出现下图:选择“基于对话框” 单击“下一步”出现下图:把“关于”框前的选项去掉,在“对话框标题”中输入:客户端程序,这样程序运行时的标题栏就会出现“客户端程序”字样 利用CAsyncSocket 类编程 – 客户端程序 3 / 16 单击下一步出现下图:选择“windows 套接字” 单击“下一步”出现下图: 可以看出,此时我们建立的工程TalkC 有两个类CTalkCApp 和 CTalkCDlg,前一个是应用程序类,无需干预,后一个是程序的主界面即对话框类,是我们重点关注的对象。 CTalkCDlg 的第一个字母 C 表示这是一个类,中间的 TalkC 表示工程名称,Dlg 表示对话框。 利用CAsyncSocket 类编程 – 客户端程序 4 / 16 类CTalkCDlg 的两个相关文件是TalkCDlg.h 和TalkCDlg.cpp .h 文件中包含该类的定义(Definition),.cpp 文件中包含该类实现(Implementation) 单击 “完成”显示下图: 下一步开始编辑文本框的界面: 1. 逐一向界面中添加 Static Text(静态文本)控件、Edit(文本框)控件、List(列表框)控件和Button(按钮)控件,结果如下图所示: 利用CAsyncSocket 类编程 – 客户端程序 5 / 16 特别要注意的是: 列表框IDC_LIST_SENT 和IDC_LIST_RECEIVED 的Sort 属性要置为false 发送按钮IDC_BUTTON_SEND 的Default Button 属性要置为true变成蓝色显示 控件的ID 和属性的表格 控件类型 ID Caption 属性 Static Text IDC_STATIC_SNAME 服务器名称 Static Text IDC_STATIC_SPORT 服务器端口 Static Text IDC_STATIC_MSG 消息 Static Text IDC_STATIC_SENT 发送的消息 Static Text IDC_STATIC_RECEIVED 接收的消息 Static Text IDC_STATIC_STATUS Edit Box IDC_EDIT_SNAME Edit Box IDC_EDIT_SPORT Edit Box IDC_EDIT_MSG List Box IDC_LI...