下载此文档

文件传输程序设计汇总.docx


文档分类:IT计算机 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
Internet网络程序设计实验报告
基于Socket的文件传输程序设计
姓名:莫 敌
班级:软件 0904
学号:U200917895
指导老帅:陆永忠

目 录
实验目的及要求 3
实验目的 3
实验要求 3
实验环境 3
3实验程序设计 3
设计思想 3
4
5
界面设计 5
6
运行结果 9
4 实验感想 11
1实验目的及要求

熟悉Socket的通讯机制,了解网络程序的设计方法。重点掌握基于 TCP协议的Socket 网络编程。

设计界面,在服务器端和客户端传输图片和文件。 如果是图片请显示该图片, 如果是其
他文件,则保存。
2实验环境
编译环境: Windows 7 + Visual Studio 2010 使用 MFC 编写。
运行环境:Windows 7操作系统。
3实验程序设计

根据实验的要求:在服务器和客户端之间传输文件和图片, 则需要程序提供一种可靠的
网络传输服务来保证文件在传输过程中无丢失、 损坏。在分析了传输层协议 TCP协议和UDP
协议后,了解到TCP协议提供的是一种面向连接的、可靠的字节流服务,而 UDP协议提供
的是一种无连接的、不可靠的数据报服务。由于程序的需求,即必须保证文件传输的可靠性, 于是,我采用基于 TCP协议的 Windows sockets来设计实现本实验。

服务器端
创建新的通信端点
将一个本地地址关联到
套接字上
*
$
宣布接受连接,给出监听 队列大小
阻塞,直到有客户企图连 接

f
发送/接受数据
释放连接

f
客户端
图1程序设计流程框图

基于TCP的socket编程流程: 服务器端:
? 创建套接字(socket)。
? 将套接字绑定到一个本地地址和端口上( bind )o
? 将套接字设为监听模式,准备接收客户端请求( listen)。
? 等待客户端请求到来。当请求到来后,接收连接请求,返回一个新的对应于此次连接的
套件字(accept)。
? 用返回的套接字和客户端进行通信( send/recv)。
? 返回,等待另一客户端请求。
? 关闭套接字。
客户端:
? 创建套接字(socket)。
? 向服务器发出连接请求(connect)。
? 和服务器端进行通信(send/recv)。
? 关闭套接字。

由于程序实现的功能单一简单,所以我的程序界面设计如图 2所示。
程序由两个用户可操作的控件组成: IP地址控件,用户输入将要接收文件的接收方 IP
地址;“发送文件”按钮,单击选择用户要发送的文件并发送所选文件数据。

套接字库加载:
AfxSocketInit()
接收线程:
UINT RecvProc( LPVOID pParam )
(
while (TRUE)
(
CSocket tmpSock;
CSocket servSock;
(5000);
(1);
(servSock);
char fileNameRecv[500] = {0};
int a = (fileNameRecv, 500);
CFileDialog saveDlg(FALSE, NULL, NULL,
OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
"所有文件(*.*)|*.*||");
= fileNameRecv;
if (IDOK == ())
{
CFile recvFile;
CString recvPathName;
recvPathName = ();
(recvPathName, CFile::modeCreate | CFile::modeWrite

文件传输程序设计汇总 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人秋江孤影
  • 文件大小75 KB
  • 时间2020-11-27
最近更新