第2节 MFC Socket编程.ppt

  1. 1、本文档共81页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
补充:CString与string string为标准模板类(STL)定义的字符串类,在标准c++或者跨平台使用程序中建议使用。 CString均是字符串模板类,在MFC或者ATL中实现,在使用mfc编程时建议使用CString。 1)对拨打电话的一方有什么要求? 2)被拨打的电话有什么要求? 3)如果被拨打的电话无人接听,怎么处理? 4)对拨打电话和被拨打电话的人有什么语言上的要求? 5)通话过程中,对物理线路有何要求? 6)如何挂断电话? 基于TCP的网络应用程序通信过程 1)客户端需了解服务器的地址和端口 2)服务器应用程序必须比客户端应用程序先启动,并在指定的ip地址和端口上执行监听操作。 3)客户端发送数据时,服务端应用程序必须有足够的时间响应才能进行正常通信。 4)双方必须采用相同协议 5)通信过程中,物理网络保持畅通 6)通信结束之前,客户端和服务端都可以中断连接 案例:使用CAsyncSocket类实现网络通信 1.工程设计 1)分别做客户端和服务端 客户端:ChatClient工程 服务端:ChatServer工程 案例:使用CAsyncSocket类实现网络通信 2界面设计-客户端 案例:使用CAsyncSocket类实现网络通信 2界面设计-服务端 案例:使用CAsyncSocket类实现网络通信 3.给各个必要控件添加变量 客户端 服务端 案例:使用CAsyncSocket类实现网络通信 4.添加相关类并增加对象 客户端 CClientSocket:其基类为:CAsyncSocket 服务端 ClistenSocket:其基类为:CAsyncSocket CServerSocket:其基类为:CAsyncSocket 案例:使用CAsyncSocket类实现网络通信 4.添加相关类并增加对象 客户端 CClientSocket m_ClientSocket; 服务端 CListenSocket m_ListenSocket; CServerSocket m_ServerSocket; 案例:使用CAsyncSocket类实现网络通信 5.编写详细代码 1)服务器端创建监听socket。 编程思路: ①获取对话框上输入的IP地址和端口号 ②使用Create函数创建一个套接字 ③使用Listen函数设置套接字开始监听 ④在列表框中显示“开始监听”字样 案例:使用CAsyncSocket类实现网络通信 Create函数使用方法: CAsyncSocket类的对象名.Create(端口号 ,套接字类型,事件类型,ip地址) 案例:使用CAsyncSocket类实现网络通信 Listen函数使用方法: CAsyncSocket类的对象名. Listen(挂起的连接队列可以增大到的最大长度) 案例:使用CAsyncSocket类实现网络通信 列表框中增加一行字符串: 列表框绑定的control类别变量的名称.AddString(“所要增加的字符串”); 案例:使用CAsyncSocket类实现网络通信 案例:使用CAsyncSocket类实现网络通信 案例:使用CAsyncSocket类实现网络通信 5.编写详细代码 2)客户端创建客户socket并发起连接。 编程思路: ①获取对话框上输入的IP地址和端口号 ②使用Create函数创建一个套接字 ③使用Connect函数实现与服务器的连接 ④如果成功,在列表框中显示“连接成功”字样 案例:使用CAsyncSocket类实现网络通信 Connect函数使用方法 CAsyncSocket类的对象名. Connect(ip地址,端口号); 案例:使用CAsyncSocket类实现网络通信 添加CClientSocket的OnConnect虚函数 添加CClientSocket的OnConnect虚函数 添加CClientSocket的OnConnect虚函数 案例:使用CAsyncSocket类实现网络通信 5.编写详细代码 3)客户端连接服务端成功后发送信息。 编程思路: ①获取对话框上输入的信息 ②使用Send函数实现信息的发送 ③在列表框中显示发送的信息内容 案例:使用CAsyncSocket类实现网络通信 5.编写详细代码 4)服务端socket等待客户发来的消息并接受。 编程思路: ①接收客户端的连接请求 ②接收客户端发来的信息 ③在列表框中显示相关信息 具体实现 1)添加CListenSocket的OnAccept的虚函数实现接收客户端的连接请求 2)添加CServerSocket的OnReceive的虚函数实现接收客户端发来的信息 案例:使用CAsyncSocket

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档