- 12
- 0
- 约1.86万字
- 约 10页
- 2016-11-27 发布于重庆
- 举报
基于TCP網络程序设计
计算机网络
实验报告
(TCP客户/服务器程序设计)
班级:XXXXXXX
学号:XXXXXXXXXXX
姓名:刘点
一、实验目的
实现在TCP方式下客户端向服务器端的文件传送过程。
二、实验性质
综合与设计性实验。
三、实验条件
装有以太网卡,配置网络协议的并能实现联网的两台微机。
四、实验要求
实现TCP的连接建立、文件传送和连接释放的三个阶段,并将任一文件传送到服务器端,编程完成该应用程序的设计(编程语言不限)。实验报告要求有实现过程的流程图,对主要的函数及其参数给予说明,要有实现过程的主要程序段,并对各段程序的功能及作用进行说明。
五、实验思想与过程
TCP协议属于传输层协议,通过面向连接、端到端和可靠的数据包发送。在此,利用C语言MFC AppWizard实现简单的不同客户交流。
客户端:
1)使用MFC AppWizard创建客户端应用程序框架。
2)为对话框界面添加控件对象
在创建了应用程序骨架之后,可以布置程序的主对话框。利用控件面板可以方便地在程序的主对话框界面中添加相应的可视控件对象
3)为对话框中的控件对象定义相应的成员变量
4)创建从CAsyncSocket类继承的派生类
为了能够捕获并响应socket事件,应创建用户自己的套接字类,它应当从CAsyncSocket类派生,还能将套接字事件传递给对话框,以便执行用户自己的事件处理函数。利用类向导ClassWizard为这个套接字类添加响应消息的事件处理成员函数。为套接字类添加一般的成员函数和成员变量
5)添加的代码
在CTcDlg对话框类的tcDlg.h中添加对于CSocket.h的包含命令,来获得对于套接字支持: #include “CSocket.h”
在CTcDlg对话框类的TcDlg.cpp中添加对于控件变量的初始化代码:
// TODO: Add extra initialization here
//用户添加的控件变量的初始化代码
BOOL CTcDlg::OnInitDialog()
{
m_strServName=localhost; // 服务器名 = localhost
m_nServPort=1000; // 服务端口 = 1000
UpdateData(FALSE); // 更新用户界面
//设置套接字类的对话框指针成员变量
m_sConnectSocket.SetParent(this);
}
6)添加事件函数和成员函数的代码
主要在CTcDlg对话框类的tcDlg.cpp中和CCSocket类的Csocket.cpp中,添加用户自己的事件函数和成员函数的代码。
7)进行测试。
测试应分步进行,在上面的步骤中,每作一步,都可以试着编译执行。
六、部分代码及其说明
// CSocket.cpp: implementation of the CCSocket class.
//
//////////////////////////////////////////////////////////////////////
#include stdafx.h
#include ts.h
#include CSocket.h
#include tsDlg.h
#include Msg.h
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
//构造函数
CCSocket::CCSocket(CTsDlg* pDlg)
{
m_pDlg = pDlg;
m_pFile = NULL;
m_pArchiveIn = NULL;
m_pArchiveOut = NULL;
}
//析构函数
CCSocket::~CCSocket()
{
m_pDlg = NULL;
if (m_pArchiveOut != NULL) delete m_pArchiveOut;
if (m_pArchiveIn != NULL) delete m_pArchiveIn;
if (m_pFile != NULL) delete m_pFile;
}
//初始化
void CC
您可能关注的文档
最近下载
- DB2302T 063-2023 红小豆绿色优质高产栽培技术规程.pdf VIP
- 山东省“两高”项目管理目录(2025年版).pdf VIP
- 2.《化工和危险化学品生产经营企业重大生产安全事故隐患判定标准(征求意见稿)》编制说明.pdf VIP
- 排污许可应知应会手册-排污单位篇.pdf VIP
- 化工企业消防设施安全管理-中国化学品安全协会.pptx VIP
- 废止《导轨式胶轮系统设计要求》等377项山东省地方标准.pdf VIP
- DB12_T 1427-2025 玉米机收减损作业技术规范.pdf VIP
- 加油新学期新气象主题班会PPT新学期新起点新计划PPT课件(带内容).pptx VIP
- 2023年南昌航空大学计算机科学与技术专业《操作系统》科目期末试卷B(有答案).docx VIP
- 餐饮品牌手册 -蜜雪冰城品牌手册-冰淇淋 奶茶.pdf
原创力文档

文档评论(0)