基于tcp网络程序设计

基于tcp网络程序设计

ID:13640185

大小:116.50 KB

页数:25页

时间:2018-07-23

基于tcp网络程序设计_第1页
基于tcp网络程序设计_第2页
基于tcp网络程序设计_第3页
基于tcp网络程序设计_第4页
基于tcp网络程序设计_第5页
资源描述:

《基于tcp网络程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机网络实验报告(TCP客户/服务器程序设计)班级:XXXXXXX学号:XXXXXXXXXXX姓名:刘点一、实验目的实现在TCP方式下客户端向服务器端的文件传送过程。二、实验性质综合与设计性实验。三、实验条件装有以太网卡,配置网络协议的并能实现联网的两台微机。四、实验要求实现TCP的连接建立、文件传送和连接释放的三个阶段,并将任一文件传送到服务器端,编程完成该应用程序的设计(编程语言不限)。实验报告要求有实现过程的流程图,对主要的函数及其参数给予说明,要有实现过程的主要程序段,并对各段程序的功能及作用进行说明。五、实验思想与过程TCP协议属于传输层协

2、议,通过面向连接、端到端和可靠的数据包发送。在此,利用C语言MFCAppWizard实现简单的不同客户交流。客户端:1)使用MFCAppWizard创建客户端应用程序框架。2)为对话框界面添加控件对象在创建了应用程序骨架之后,可以布置程序的主对话框。利用控件面板可以方便地在程序的主对话框界面中添加相应的可视控件对象3)为对话框中的控件对象定义相应的成员变量4)创建从CAsyncSocket类继承的派生类为了能够捕获并响应socket事件,应创建用户自己的套接字类,它应当从CAsyncSocket类派生,还能将套接字事件传递给对话框,以便执行用户自己的事

3、件处理函数。利用类向导ClassWizard为这个套接字类添加响应消息的事件处理成员函数。为套接字类添加一般的成员函数和成员变量5)添加的代码在CTcDlg对话框类的tcDlg.h中添加对于CSocket.h的包含命令,来获得对于套接字支持:#include“CSocket.h”在CTcDlg对话框类的TcDlg.cpp中添加对于控件变量的初始化代码://TODO:Addextrainitializationhere//用户添加的控件变量的初始化代码BOOLCTcDlg::OnInitDialog(){m_strServName="localhost"

4、;//服务器名=localhostm_nServPort=1000;//服务端口=1000UpdateData(FALSE);//更新用户界面//设置套接字类的对话框指针成员变量m_sConnectSocket.SetParent(this);}6)添加事件函数和成员函数的代码主要在CTcDlg对话框类的tcDlg.cpp中和CCSocket类的Csocket.cpp中,添加用户自己的事件函数和成员函数的代码。7)进行测试。测试应分步进行,在上面的步骤中,每作一步,都可以试着编译执行。六、部分代码及其说明//CSocket.cpp:implementa

5、tionoftheCCSocketclass.////////////////////////////////////////////////////////////////////////#include"stdafx.h"#include"ts.h"#include"CSocket.h"#include"tsDlg.h"#include"Msg.h"#ifdef_DEBUG#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#definenewDEBUG_NEW#endif//////////////////

6、//////////////////////////////////////////////////////Construction/Destruction////////////////////////////////////////////////////////////////////////构造函数CCSocket::CCSocket(CTsDlg*pDlg){m_pDlg=pDlg;m_pFile=NULL;m_pArchiveIn=NULL;m_pArchiveOut=NULL;}//析构函数CCSocket::~CCSocket(){m_

7、pDlg=NULL;if(m_pArchiveOut!=NULL)deletem_pArchiveOut;if(m_pArchiveIn!=NULL)deletem_pArchiveIn;if(m_pFile!=NULL)deletem_pFile;}//初始化voidCCSocket::Initialize(){//构造与此套接字相应的CSocketFile对象m_pFile=newCSocketFile(this,TRUE);//构造与此套接字相应的CArchive对象m_pArchiveIn=newCArchive(m_pFile,CArchiv

8、e::load);m_pArchiveOut=newCArchive(m_pFile,CArc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。