利用MFC的Csocket类实现网络通信利用MFC的Csocket类实现网络通信.ppt

利用MFC的Csocket类实现网络通信利用MFC的Csocket类实现网络通信.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用MFC的Csocket类实现网络通信利用MFC的Csocket类实现网络通信

VC++6.0中利用MFC的CSocket类实现网络通信 简单的用户界面 服务器界面 客户端界面 程序的运行使用说明 在一台计算机上同时运行客户端和服务器,服务器使用端口号为6000(或其它1024以后的端口号),客户端使用默认的端口号。显然客户端和服务器的ip地址均为 127.0.0.1 服务器端单击“侦听”按钮 客户端单击“连接”按钮(若服务器端已处于“侦听”状态则弹出对话框“连接成功”,否则弹出对话框“连接失败”并等待下一次单击“连接”按钮) 客户端输入要发送的信息,单击“发送”按钮 服务器端单击“接收”按钮,接收到客户端发来的信息 服务器端的创建(1) 新建工程LXServer 服务器端的创建(2) 创建的程序类型为“基本对话” 服务器端的创建(3) 选择Windows Sockts支持 服务器端的创建(4) 接下来几步直接点击“下一步”,直到下面对话框单击“完成” 服务器端的创建(5) 添加控件(以客户端界面为例) 服务器端的创建(6) 编辑界面,对界面上的控件点击右键,选择属性选项,可以修改ID(把ID改为有意义的名字)和标题 界面上没有控件的地方点击右键,弹出菜单,单击“建立类向导”(或者英文版叫Class Wizard),为每个控件添加变量。注意控件ID、变量类型、变量名(参看下页“建立类向导”) 服务器端的创建(7)建立类向导 服务器端的创建(8)新建Csocket的派生类Cserver 为了处理CSocket得到的消息,新建CSocket的派生类CServer(参看上页“建立类向导”或者实验指导书) 服务器端的创建(9) 为了防止用户未点击“侦听”就点击“接收”,令初始的界面“接收”按钮无效,在BOOL CLXServer::OnInitDialog()的末尾添加 // TODO: Add extra initialization here m_BTNRecv.EnableWindow(FALSE); //使接收按钮无效 在LXServerDlg.h里添加 #include “Server.h“,即包含CServer类的头文件 在CLXServerDLG类中添加两个Cserver类的对象m_server与m_recv, 即在LXServerDlg.h里添加 private: CServer m_Server; //用于创建端口 CServer m_Recv; //用于绑定对方IP地址和端口号 服务器端的创建(10) 界面的控件“侦听”按钮上双击,添加如下代码 void CLX2Dlg::OnBtnListen() { // TODO: Add your control notification handler code here m_Server.Create(6000); //新建端口6000 m_Server.Listen(); //侦听 m_Server.Accept(m_Recv); //侦听到的ip地址和端口号绑定到m_Recv m_BTNRecv.EnableWindow(TRUE); //接收按钮有效 m_BTNListen.EnableWindow(FALSE); //侦听按钮无效 } 服务器端的创建(11) 界面的控件“接收”按钮上双击,添加如下代码 void CLX2Dlg::OnBtnRecv() { // TODO: Add your control notification handler code here char buf[255]=; m_Recv.Receive(buf,255); //接收消息到buf CString s_msg; s_msg.Format(“%s”,buf); //buf的值传到字符串s_msg m_EDTValue=m_EDTValue+s_msg; UpdateData(FALSE); //变量值传到界面上 } 客户端创建(1) 新建工程LXClient,设计界面如下 客户端创建(2) 修改控件ID,通过“新建类向导”为控件添加变量 为了处理CSocket得到的消息,新建CSocket的派生类CClient(过程同服务器) 在CLXClientDLG类中添加 CClient对象 m_client(客户端套接字),即在CLXClientDLG.h中添加 private: CClient m_client; //客户端端口 客户端的创建(3)程序关闭时关闭端口

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档