- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大学研究生堂下考试答卷
2014-2015 学年第 1 学期
考试科目
姓 名
年 级
专 业
2014 年 12 月 28 日
《面向对象程序设计》课程报告
学号: 姓名: 学院:
题 基于 MFC 的聊天室与 FTP 文件传输系统
目
首先经过一个学期关于 C++的学习,我们希望能够运用所学的知识
做出一些具有使用价值的产品。另外,由于本身专业是通信工程,基于
选 对通信软件编程方面兴趣,希望能够在完成课程设计的同时能够加深自
题 己对通信底层原理的理解。 因此我们选择的题目是基于 MFC 的网络聊天
背 室与 FTP 文件传输的编程。并且希望最后编写好的程序能够在同学之间
景 进行交流以及文件共享方面具有一定的实用价值。最后,希望在完成编
程的过程中提高自己 C++ 方面的能力以适应今后的学习与发展。
实现的功能:
1. 支持多个客户端与服务器端之间的连接。
2 . 支持客户端与客户端之间的通信。
3. 支持服务器端与客户端之间的通信。
4 . FTP 客户端方面支持文件的下载、上传、以及删除的功能。
5. FTP 文件传输方面拥有两个客户端, 一个是用于单线程的, 另一个是
用于多线程的,本实例对两个客户端的工作方式进行了对比。
实现环境及开发工具:
1.windows 7/8.1 操作系统(实现环境)
2.visual studio2010/2013 (开发工具)
3.MSDN2008 (帮组文档)
4.StarUML (UML 制图工具)
由于本实例是通信网络编程,使用到了很多网络通信方面的知识,
其中包括 WinSock 编程以及 WinInet 编程。下面介绍一下两类编程的基
础知识。
一、 WinSock 编程
基
1.介绍
础
知 套接字是支持 TCP/IP 网络通信的基本操作单元。多个 TCP 连接或
识 多个应用程序进程可能需要通过同一个 TCP 协议端口传输数据。 为了区
别不同的应用程序进程和连接,许多计算机操作系统为应用程序与
TCP/IP 协议交互提供了称为套接字 (Socket)的接口。套接字为不同的应用
进程使用网络协议进行数据交换提供了接口,主要用于应用层与传输层
之间。
套接字分为三类:流式套接字、报文套接字以及原始套接字。其中
最常使用的是流式套接字与报文套接字。流式套接字是面向连接的,在
数据传输之前需要在双方之间建立起连接,主要用于 TCP 业务;报文套
接字是面向无连接的,在数据传输之间无需建立连接,只需要知道对方
的 IP 网络地址已经对应的业务端口就可以把业务发送到目的端,报文套
接字主要是用于传输基于 UDP 的业务。
由于 Windows 提供了 SOCKET 的 API 函数,因此简化了整个套接字
应用编程的难度,但是对于一般的初学者来说使用 SOCKET API 函数进
行编程还是具有一定的难度,其主要适用于对整个协议工作过程有深入
了解的专业人士使用。因此为了降低编程的门槛,微软公司将 SOCKET
API 函数封装为了一个新的类
文档评论(0)