1 实验五 FTP客户端程序 1.实验目的 文件传送协议FTP是Internet中广泛使用的服务协议之一,FTP协议是客户/服务器之间进行文件传递的协议。 理解FTP协议的工作原理 掌握FTP客户程序的编程方法 理解在FTP传输过程中建立的两个连接 2.实验内容 利用WinSock编程接口编写FTP客户程序,在用户界面中给出必要的FTP服务器信息:FTP服务器的IP地址、用户名、口令等,通过FTP协议实现指定文件的上载和下载操作。 3.实验环境 程序运行环境为以太网,采用TCP/IP协议栈,网络操作系统为 Windows,具有 Internet连接能力。程序开发环境为 vs2012。 4.实验步骤 步骤 1 需求分析 FTP客户程序功能为: (1) FTP客户程序首先显示用户界面,可以指定 FTP服务器的地址、用户名和口令等信息 (2) 通过FTP协议接收 FTP服务器的当前目录列表,并显示本地和远程目录列表信息 (3) 可以实现本地和远程目录的切换 (4) 可以实现文件的上载和下载操作 步骤 2 FTP客户程序开发 用Visual C++编写FTP客户程序,利用WinSock编程接口实现 FTP协议通信。FTP客户程序首先显示用户界面,使用户可以指定 FTP服务器和用户、口令信息(可以采用匿名方式),点击连接按钮后,向 FTP服务器的TCP 21号端口建 2 立TCP连接,在控制连接上发送FTP命令,首先获得本地和远程系统的目录列表并显示,可以进行目录切换等操作,指定上、下载的文件建立数据连接进行文件传送。 步骤 3 编译和执行程序 将 FTP客户程序编译、连接成执行程序,运行FTP客户程序。填写校园网的FTP服务器 IP和用户、口令信息,进行各种FTP操作(文件上载、下载)。 5.具体实现 (1) 数据结构分析 定义 FileItem结构来保存文件信息 typedef struct FileItem { int nItem; // 在列表框中的索引 BOOL bDir; // 判断是否为文件夹 CString strFileName; // 文件名 }FILEITEM; 主对话框类完成 FTP的大部分功能 其中: ID_control成员变量: CListCtrl m_ctrlRemoteFiles; // IDC_LIST_REMOTE 映射的列表型变量 CListCtrl m_ctrlLocalFiles; // IDC_LIST_LOCAL 映射的列表型变量 CString m_strPassword; // IDC_PASSWORD 映射的CString型变量 CString m_strServer; // IDC_SERVER 映射的CString型变量 CString m_strUserName; // IDC_USER 映射的CString型变量 其他添加功能所需成员变量...