[源码和文档分享]基于VC++的MFC类库实现的简单FTP客户端

1 FTP客户端设计思想

在WINDOWS环境下,使用VC++开发工具实现一个FTP客户端软件。在本次FTP的设计中主要使用WinInet API编程,无需考虑基本的通信协议和底层的数据传输工作,MFC提供的WinInet类是对WinInet API函数封装而来的,它为用户提供了更加方便的编程接口。而在该设计中,使用的类包括 CInternetSession类、CFtpConnection类和CFtpFileFind类,其中,CInternetSession用于创建一个Internet会话; CftpConnection完成文件操作; CftpFileFind负责检索某一个目录下的所有文件和子目录。

程序的功能:

登陆到FTP服务器

检索FTP服务器上的目录和文件

根据FTP服务器给的权限,会相应地提供:文件的上传、下载、重命名、删除等功能

2 Ftp客户端的各个子模块主要函数功能分析及流程图

2.1 对程序的外观进行修改

2.1.1 添加背景图

为CMyFtpView类窗口,添加一个位图背景显示,首先为CmyFtpView添加WM_ERASEBKGND消息响应函数OnEraseBkgnd。该函数的前提是所需的位图已经导入资源中。

2.1.2 添加时钟显示功能

首先为CMainFrame类,设置一个定时器,然后为该类响应WM_TIMER消息,在OnTimer函数中实现功能。

2.1.3 修改菜单栏、状态栏

在资料对话框或源程序代码中采取针对性的操作,得以实现。

2.2 连接到FTP服务器功能的实现

2.2.1 生成连接对话框

新建一个对话框(CConnectDlg)用来输入服务器的站点,用户名和密码信息,然后通过该对话框连接到服务器.主要的函数void CConnectDlg::OnConnect() 实现的功能就是更新当前的输入。

2.2.2 连接CMyFtpView::OnConnect()

该函数是菜单项“连接”的响应函数,主要生成“连接”CConnectDlg对话框,从而建立FTP连接。

2.2.3 连接时间void CMyFtpView::OnTimer

对CMyFtpView定时器,所发送的WM_TIMER消息进行响应,主要用于监视FTP连接是否成功连接。

2.3 FTP客户端文件的显示查询实现

2.3.1 查询函数OnQuary

该函数是“查询”按钮BN_CLICKED的响应函数,主要调用ListContent函数为实现查询的功能

2.3.2 显示当前目录下所有的子目录与文件ListContent

参数所代表的是要查询的目录名,实现的方法主要是通过CftpFileFind类对象得以实现,返回给用户的信息有:目录或文件名、文件最后修改的时间以及文件的大小和类型。

流程图如下所示:

[源码和文档分享]基于VC++的MFC类库实现的简单FTP客户端_第1张图片

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1341.html

你可能感兴趣的:([源码和文档分享]基于VC++的MFC类库实现的简单FTP客户端)