[Socket网络编程大作业.doc

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

网络编程技术 大作业 项目开发人 杨腾飞 开发人班级 2010-2 开发人学号 2010082225 开发人专业 软件工程 项目名称 MFC实现局域网内点对点的文件传输 成绩 (70%) 修 改 履 历 修改编号 日期 修改人 版本号 修改内容 1 2013.5.24 杨腾飞 1.0 编写需求分析 2 2013.5.25 杨腾飞 1.1 修改模块接口设计 3 2013.5.26 杨腾飞 1.2 编写自我评价 TCP/IP协议的概述 TCP/IP(Transmission Control Protocol/Internet Protocol)的简写,中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议,这个协议是Internet最基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。 TCP/IP体系结构 Socket通常也称作套接字,用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过套接字向网络发出请求或者应答网络请求。Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。 目 录 1 文档概述 5 1.1 文档目的和范围 5 1.2 术语/缩略语 5 1.3 参考文档 5 2 系统概述 5 2.1 项目说明 5 2.2 需求分析 5 2.3 可行性或难点分析 6 3 通信协议设计 6 3.1 通信流程 6 3.2 数据格式 6 3.3 会话举例 6 4 系统设计说明 6 4.1 模块整体结构图 6 4.2 使用说明书 6 5 模块详细说明 6 5.1 核心通信模块 7 5.1.1 socket函数的功能 7 5.1.2 通信时序图 7 5.2 用户接口模块 7 5.3 类/接口/函数说明 7 6 结论 7 6.1 自我评价或总结 7 6.2 需要进一步学习的内容 7 6.3 系统扩展计划 7 文档概述 文档目的和范围 明确任务和需求使得软件开发人员知道软件开发流程,软件测试时更有条理1 API 应用程序编程接口 2 Socket 网络套接口 3 IP IP是英文Internet Protocol()的缩写Windows下网络编程的规范1 Windows网络编程 罗莉琴 詹祖桥2011年4月 第1版 运行环境:win7 需求分析 该程序实现局域网内的文件传输功能,包括服务器端程序和客户端程序两部分。 客户端程序:可连接到服务器,并将文件发送到服务器端和接受服务器端发送来的文件。 服务器端程序:负责相应客户端的消息和接收客户端发送来的文件。 可行性或难点分析 本软件的难点在于进行文件传输时只能传送较小的文件,对于大文件的传输还有部分问题尚待解决。此外,传输文件时的效率较低,程序容易出现假死现象,所以考虑到如果使用多线程应该能提高效率,但是基于自身能力和时间问题,这部分优化没有做,只是完成了基本的文件传输功能。 通信协议设计 通信流程 会话举例 1.选择服务器端的话会自动获取本机IP,可以自定义端口号。然后点击“启动”按钮,可以开启服务器监听有无客户端连接。 2.选择客户端可以自己输入要连接的服务器的IP地址和端口号。点击“连接”按钮,可以连接到服务器,然后“选择文件”按钮才可以被点击。 3.服务器和客户端连接后的状态如下所示: 4.选择一个文件后点击发送,文件接收成功后会出现提示框。 系统设计说明 模块整体结构图 使用说明书 程序使用MFC做的界面,所以操作简单,直接用鼠标点击相应按钮即可。 模块详细说明 核心通信模块 该函数主要用于理文件的控制消息。void CFileTransfersDlg::SendFile(CSocket senSo) { m_bIsTransmitting = TRUE; //打开要发送的文件 CFile file; if(!file.Open(m_strPath, CFile::modeRead | CFile::typeBinary)) { AfxMessageBox(_T(文件打开失败)); GetDlgItem(IDC_DISCONNECT)-EnableWindow(TRUE); GetDlgItem(IDC_SELECT_FILE)-EnableWindow(TRUE); GetDlgItem(IDC_STOP_TRANSFERS)-EnableWindow(FALSE); senSo.Close(); return ; } m

文档评论(0)

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

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

1亿VIP精品文档

相关文档