ftp客户程序
FTP 的主要操作都是基于各种命令基础之上的。常用的命令有: · 设置传输模式,它包括ASCⅡ(文本) 和BINARY 二进制模式; · 目录操作,改变或显示远程计算机的当前目录(cd、dir/ls 命令); · 连接操作,open命令用于建立同远程计算机的连接;close命令用于关闭连接; · 发送操作,put命令用于传送文件到远程计算机;mput 命令用于传送多个文件到远程计算机; · 获取操作,get命令用于接收一个文件;mget命令用于接收多个文件。 编程思路 根据FTP 的工作原理,在主函数中建立一个服务器套接字端口,等待客户端请求,一旦客户端请求被接受,服务器程序就建立一个服务器分线程,处理客户端的命令。如果客户端需要和服务器端进行文件的传输,则建立一个新的套接字连接来完成文件的操作。 编程技巧说明 http://www.jacken.com.cn/Programming/Java/2008-10-24/Java-.html
㈡ FTP客户端软件类型有哪些
iis7服务器管理工具
ftp客户端软件有很多,下面我简单介绍几个非常不错的FTP客户端软件,感兴趣的朋友可以尝试一下:iis7服务器管理、FileZilla、WinSCP、LeapFtp、CuteFTP.
㈢ 最常见的ftp服务是
一般就是Gene6 Ftp Server或者Serv-U。
ftp(file transfer protocal),是文件传输协议的简称。用于internet上的控制文件的双向传输。同时,它也是一个应用程序(application)。用户可以通过它把自己的pc机与世界各地所有运行ftp协议的服务器相连,访问服务器上的大量程序和信息。 ftp的作用 正如其名所示:ftp的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着ftp服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
ftp工作原理 拿下传文件为例,当你启动ftp从远程计算机拷贝文件时,你事实上启动了两个程序:一个本地机上的ftp客户程序:它向ftp服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的ftp服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。ftp采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装ftp客户程序。ftp客户程序有字符界面和图形界面两种。字符界面的ftp的命令复杂、繁多。图形界面的ftp客户程序,操作上要简洁方便的多。
㈣ FTP到底是干什么的,具体有什么功能!
分类: 电脑/网络 >> 操作系统/系统故障
问题描述:
我对FTP具体功能一点也不了解,麻烦请具体讲解下,并说明下如何操作使用!
解析:
1.什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写。该协议是Inter文件传送的基础,它由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载(download)”文件。若将文件从自己计算机中拷贝至远程计算机上,则称之为“上载(upload)”文件。在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。
2.FTP的工作方式
FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive (也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送 PASV命令到 FTP Server。
3.ftp工具,就是专门用来进行FTP上传下载的工具。常用FTP工具有:
CuteFTP Pro :CuteFTP Pro是一个全新的商业级FTP客户端程序,其加强的文件传输系统能够完全满足今天的商家们的应用需求。这里文件通过构建于SSL或SSH2安全认证的客户机/服务器系统进行传输,为VPN、WAN、Extra开发管理人员提供最经济的解决方案!企业再不需要为了一套安全的数据传输系统而进行破费了。此外,CuteFTP Pro还提供了Sophisticated Scripting、目录同步、自动排程、同时多站点连接、多协议支持(FTP、SFTP、HTTP、HTTPS)、智能覆盖、整合的HTML编辑器等功能特点以及更加快速的文件传输系统。
LeapFTP:一款被多家网站评估为五星级、功能强大、能媲美BulletProof FTP的FTP软件。跟Netscape相仿的书签形式,连线更加方便。下载与上传文件支持续传。可下载或上传整个目录,亦可直接删除整个目录。可让你编列顺序一次下载或上传同一站台中不同目录下的文件。浏览网页时若在文件连结上按鼠标右键选[复制捷径]便会自动下载该文件。具有不会因闲置过久而被站台踢出的功能。可直接编辑远端Server上的文件。可设定文件传送完毕自动中断Modem连接。
FlashFXP:功能强大的 FXP / FTP 软件,融合了一些其他优秀 FTP 软件的优点,如像 CuteFTP 一样可以比较文件夹,支持彩色文字显示;像 BpFTP 支持多文件夹选择文件,能够缓存文件夹;像 LeapFTP一样的外观界面,甚至设计思路也差相仿佛。支持文件夹(带子文件夹)的文件传送、删除;支持上传、下载及第三方文件续传;可以跳过指定的文件类型,只传送需要的文件;可以自定义不同文件类型的显示颜色;可以缓存远端文件夹列表,支持FTP 代理及 Socks 3 & 4;具有避免空闲功能,防止被站点踢出;可以显示或隐藏“隐藏”属性的文件、文件夹;支持每个站点使用被动模式等。!
TurboFTP:一款绝对老牌的FTP传输工具。它支持断线自动重新连接并自动恢复传输,文件列表过滤,远程编辑,整个远端目录删除,目录上传下载,断点续传, 多达八种的代理服务器,完成传送后自动挂线或关机,方便的 FTP 站点地址薄,等等。
ChinaFTP:ChinaFTP是一款完全由国人开发的免费的FTP客户端软件,软件支持对文件传输的所有操作,支持MSDOS和Unix两种目录结构。ChinaFTP与服务器的交互快,文件传输速度快,支持整个目录及子目录的上传,软件包含站点管理,方便用户对所访问的站点进行访问保存,无需每次访问时都输入服务器名、用户名和密码。简单的操作和方便的管理,软件界面清晰,左侧为本地磁盘文件,右侧为FTP文件服务器。文件上传下载显示进度查看、已传送字节、传输速度显示、服务器状态显示等。
AceFTP Pro:相当强大且好用的FTP软件,使用者只需以软件本身的浮动按钮即会操作,它提供多文件下载,且可同时至多个Sever下载,使用者更可边上FTP下载文件,边浏览网页一个FTP软件,结合了浏览器与FTP的功能,它可以在下载或上传文件之前先预览 GIF、JPG和 HTML的文件,并且你可以在同一个视窗下开启多个远端的目录或是登入多个远端的FTP服务器,你也可以直接输入欲下载文件的位址来下载文件,支持 FTP 和 HTTP。
EmFTP Pro:EmFTP 是一个易于使用的,高品质的 FTP 客户端软件。EmFTP 是共享软件。EmFTP 可以与 EmEditor (Windows 下很好用的一个文本编辑器)很好的结合在一起。如果你已安装 EmEditor,你可以直接编辑一个服务器上的文件,就像编辑一个本地文件一样。同样,你可以可以非常容易的从其他客户端中导入设置,例如:FFFTP、Inter Explorer、WS_FTP。 同步上传功能可以直接复制本地文件夹的正确结构到服务器上。
以上几个软件下载地址,请参考网页bbs.zj.chinav/topic_show.jsp?id=1463289&oldpage=1&thesisid=45&flag=topic1
㈤ 什么是FTP服务器怎么使用它
FTP(File Transfer Protocol)是文件传输协议的简称。 x0dx0aFTP的作用 x0dx0a正如其名所示:FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。 x0dx0aFTP工作原理 x0dx0a拿下传文件为例,当你启动FTP从远程计算机拷贝文件时,你事实上启动了两个程序:一个本地机上的FTP客户程序:它向FTP服务器提出拷贝文件的请求。另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装FTP客户程序。FTP客户程序有字符界面和图形界面两种。字符界面的FTP的命令复杂、繁多。图形界面的FTP客户程序,操作上要简洁方便的多。 x0dx0a简单地说,支持FTP协议的服务器就是FTP服务器,下面介绍一下什么是FTP协议(文件传输协议) x0dx0a一般来说,用户联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一。Internet上早期实现传输文件,并不是一件容易的事,我们知道 Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,据统计连接在Internet上的计算机已有上千万台,而这些计算机可能运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等等,而各种操作系统之间的文件交流问题,需要建立一个统一的文件传输协议,这就是所谓的FTP。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议,这样用户就可以把自己的文件传送给别人,或者从其它的用户环境中获得文件。 x0dx0a与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。 x0dx0a在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上载"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上载"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上载(下载)文件。 x0dx0a使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可上载或下载文件。也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。换言之,除非有用户ID和口令,否则便无法传送文件。这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。匿名FTP就是为解决这个问题而产生的。 x0dx0a匿名FTP是这样一种机制,用户可通过它连接到远程主机上,并从其下载文件,而无需成为其注册用户。系统管理员建立了一个特殊的用户ID,名为anonymous, Internet上的任何人在任何地方都可使用该用户ID。 x0dx0a通过FTP程序连接匿名FTP主机的方式同连接普通FTP主机的方式差不多,只是在要求提供用户标识ID时必须输入anonymous,该用户ID的口令可以是任意的字符串。习惯上,用自己的E-mail地址作为口令,使系统维护程序能够记录下来谁在存取这些文件。 x0dx0a值得注意的是,匿名FTP不适用于所有Internet主机,它只适用于那些提供了这项服务的主机。 x0dx0a当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。系统中的其余目录则处于隐匿状态。作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上载文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的机器上,但不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。即使有些匿名FTP主机确实允许用户上载文件,用户也只能将文件上载至某一指定上载目录中。随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上载有问题的文件,如带病毒的文件。 x0dx0a作为一个Internet用户,可通过FTP在任何两台Internet主机之间拷贝文件。但是,实际上大多数人只有一个Internet帐户,FTP主要用于下载公共文件,例如共享软件、各公司技术支持文件等。 Internet上有成千上万台匿名FTP主机,这些主机上存放着数不清的文件,供用户免费拷贝。实际上,几乎所有类型的信息,所有类型的计算机程序都可以在Internet上找到。这是Internet吸引我们的重要原因之一。 x0dx0a匿名FTP使用户有机会存取到世界上最大的信息库,这个信息库是日积月累起来的,并且还在不断增长,永不关闭,涉及到几乎所有主题。而且,这一切是免费的。 x0dx0a匿名FTP是Internet网上发布软件的常用方法。Internet之所以能延续到今天,是因为人们使用通过标准协议提供标准服务的程序。像这样的程序,有许多就是通过匿名FTP发布的,任何人都可以存取它们。 x0dx0aInternet中的有数目巨大的匿名FTP主机以及更多的文件,那么到底怎样才能知道某一特定文件位于哪个匿名FTP主机上的那个目录中呢?这正是Archie服务器所要完成的工作。Archie将自动在FTP主机中进行搜索,构造一个包含全部文件目录信息的数据库,使你可以直接找到所需文件的位置信息。 x0dx0ax0dx0aFTP是一种上传和下载用的软件。 x0dx0a定义如下:FTP(File Transfer Protocal),是用于Internet上的控制文件的双向传输的协议。同时,它也是一个应用程序。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。 x0dx0ax0dx0a传输文件的一般步骤如下: x0dx0a1在本地电脑上登陆到国际互联网, x0dx0a2搜索有文件共享主机或者个人电脑(一般有专门的FTP服务器网站上公布的,上面有进入该主机或个人电脑的名称,口令和路径) x0dx0a3当与远程主机或者对方的个人电脑建立连接后,用对方提供的用户名和口令登陆到该主机或对方的个人电脑. x0dx0a4在远程主机或对方的个人电脑登陆成功后,就可以上传你想跟别人分享的东东或者下载别人授权共享的东东(这里的东东是指能放到电脑里去又能在显示屏上看到的东东) x0dx0a5完成工作后关闭FTP下载软件,切断连接. x0dx0a为了实现文件传输,用户还要运行专门的文件传输程序,比如网际快车就有这方面的功能,其它还有很多专门的FTP传输软件,各有各的特色. x0dx0ax0dx0aFTP协议:文件传输协议 x0dx0aFTP服务器:可以下载和上传文件的服务器。但是你必须拥有一定的权限才可以上传或者下载,这种服务器一般用于公司内部使用
㈥ FTP是什么意思
网站的FTP是文件传输协议。是电脑文件传输中很重要的一部分。
文件传输协议(英文:FileTransferProtocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。
FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。但是,FTP有着极高的延时,从开始请求到第一次接收需求数据之间的时间,会非常长;并且不时的必须执行一些冗长的登录进程。

(6)ftp客户程序扩展阅读:
FTP的使用方式:
TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。FTP的任务是从一台计算机将文件传送到另一台计算机,不受操作系统的限制。
需要进行远程文件传输的计算机必须安装和运行ftp客户程序。在windows操作系统的安装过程中,通常都安装了tcp/ip协议软件,其中就包含了ftp客户程序。但是该程序是字符界面而不是图形界面,这就必须以命令提示符的方式进行操作,很不方便。
启动ftp客户程序工作的另一途径是使用ie浏览器,用户只需要在ie地址栏中输入如下格式的url地址:ftp://[用户名:口令@]ftp服务器域名:[端口号]
(在CMD命令行下也可以用上述方法连接,通过put命令和get命令达到上传和下载的目的,通过ls命令列出目录,除了上述方法外还可以在cmd下输入ftp回车,然后输入open IP来建立一个连接,此方法还适用于linux下连接ftp服务器)
通过ie浏览器启动ftp的方法尽管可以使用,但是速度较慢,还会将密码暴露在ie浏览器中而不安全。因此一般都安装并运行专门的ftp客户程序。
在本地电脑上登陆到国际互联网。
搜索有文件共享主机或者个人电脑(一般有专门的FTP服务器网站上公布的,上面有进入该主机或个人电脑的名称,口令和路径).
当与远程主机或者对方的个人电脑建立连接后,用对方提供的用户名和口令登陆到该主机或对方的个人电脑。
在远程主机或对方的个人电脑登陆成功后,就可以上传你想跟别人分享的东西或者下载别人授权共享的东西(这里的东西是指能放到电脑里去又能在显示屏上看到的东西).
完成工作后关闭FTP下载软件,切断连接。
参考资料来源:网络 ftp
㈦ 怎样利用WinInet技术开发FTP客户端程序
摘要:WinInet是微软MFC类库提供的Win32Internet扩展接口,利用WinInet开发人员可以方便地编写出Internet客户端程序。本文主要阐述利用WinInet在VC 2005中实现FTP客户端程序的方法。相对于通常采用的IE浏览器,本FTP客户端程序更加安全可靠。
关键词:MFC;WinInet;FTP客户端程序;VC 2005
一、WinInet概述
为了开发Internet客户端程序,微软的MFC类库提供了专门的Win32Internet扩展接口,即WinInet。WinInet提供了Internet会话类CInternetSession、Internet连接类CInternetConnection、Internet文件类CInternetFile、Internet文件操作类CFileFind、Internet通用异常类CInternetException等类。WinInet为HTTP、FTP和Gopher提供了统一的函数集,用户使用这些类可以大大简化针对HTTP、FTP等协议的编程,特别是客户端的编程。
二、建立FTP客户端程序的步骤
FTP客户端程序首先要建立与服务器的连接,这需要一个CInternetSession和CFtpConnection对象,但并不需要直接创建CFtpConnection对象,而是通过调用CInternetSession::GetFtpConnection来实现;然后通知FTP服务器改变目录到当前服务目录,通过CFtpConnection::SetCurrentDirectory实现;读写服务器中的数据,必须创建一个CFtpFileFind的实例;找到第一个文件,如果文件没找到返回FALSE,通过CFtpFileFind::FindFile实现;循环找下一个文件,如果文件没找到返回FALSE,通过CFtpFileFind::FindNextFile实现;最后打开找到的文件进行相应的操作。
三、建立FTP客户端程序的实例
1.功能描述
本FTP客户端程序实现如下功能:通过用户名、密码(只要是合法的用户名、密码均可)登录到指定的FTP服务器,在文件列表框中列出FTP服务器当前目录所在的文件和目录,然后以“另存为”对话框实现对选定文件的下载功能。
2.设计
(1)在VisualStudio2005创建一个名为FTPClient项目
项目类型:开发语言为VisualC 的基于对话框的MFC应用程序,设计对话框模板如图1所示。
图1FTPClient对话框模板
(2)为各控件添加变量
为“FTP服务器地址”文本框添加Cstring类型的变量m_strFTPServer;为“端口”文本框添加UINT类型的变量m_nFTPPort;为“用户名”文本框添加Cstring类型的变量m_strUserName;为“密码”文本框添加Cstring类型的变量m_strPassword,其Password属性为TRUE;为“下载目录”文本框添加Cstring类型的变量m_strFTPDirectory;为“下载目录文件列表”列表框控件添加CListBox类型的变量m_listFiles;为“连接”按钮添加Cbutton类型的变量m_bnConnect;为“下载文件”按钮添加Cbutton类型的变量m_bnDownloadFile。
3.实现
(1)建立与FTP服务器的连接
为此需要在对话框类(FTPClientDlg.h)中添加CInternetSession类的对象m_Session和CFtpConnection对象指针m_pConnection两个变量。为使程序可使用WinInet类,需要在stdafx.h中加入一个对afxinet.h和afx.h的包含。建立连接主要是通过单击对话框中的“连接”按钮来实现的(调用FTPClientDlg.cpp中的CFTPClientDlg::OnBnClickedButtonconnect()),其代码如下。
voidCFTPClientDlg::OnBnClickedButtonconnect()
{
UpdateData(TRUE);//从对话框中获取数据
if(!m_pConnection)//进行连接
{
if(m_strFTPServer!="")
{
//利用Internet对话对象m_Session打开一个FTP连接
m_pConnection=m_Session.GetFtpConnection(m_strFTPServer,m_strUserName,m_strPassword,m_nFTPPort);
if(m_pConnection)
{
//如果连接成功,则获取当前目录
m_pConnection->GetCurrentDirectory(m_strFTPDirectory);
//将“连接”按钮改为“断开连接”按钮
m_bnConnect.SetWindowText(_T("断开连接"));
LoadListofFtpFiles();//获取文件列表
//FTP已连接,“下载文件”按钮使能
m_bnDownloadFile.EnableWindow(TRUE);
UpdateData(FALSE);//更新对话框数据
}
}
}
else//断开连接
{
m_pConnection->Close();//断开连接并删除连接对象
deletem_pConnection;
m_pConnection=NULL;//重置连接对象指针为NULL
//将“断开连接”按钮改为“连接”按钮
m_bnConnect.SetWindowText(_T("连接"));
m_strFTPDirectory="";//重置目录
m_listFiles.ResetContent();//清空列表框
//FTP断开连接,“下载文件”按钮Disable
m_bnDownloadFile.EnableWindow(FALSE);
UpdateData(FALSE);//更新对话框数据
}
}
BOOLCFTPClientDlg::OnInitDialog()
{
Cdialog::OnInitDialog();
…//省略原有代码
//TODO:在此添加额外的初始化代码
//设置默认的FTP服务器名(IP)、端口、用户名(匿名)和登录密码,目录
m_strFTPServer=_T("192.168.0.1");//设置FTP的IP
m_nFTPPort=21;//设置FTP端口:默认的端口是21
m_strUserName=_T("user1");//设置登录用户名,默认的是匿名:user1
m_strPassword=_T("user1");//设置登录密码:user1
m_listFiles.ResetContent();//清空文件目录列表
m_pConnection=NULL;//初始状态FTP未连接,FTP连接类的指针变量初始化为空
//FTP未连接,“下载文件”按钮Disable
m_bnDownloadFile.EnableWindow(FALSE);
UpdateData(FALSE);//交换数据,对话框显示初始化内容
returnTRUE;//除非将焦点设置到控件,否则返回TRUE
}
voidCFTPClientDlg::OnClose()
{
m_Session.Close();//在对话框关闭时关闭Internet连接
Cdialog::OnClose();
}
(2)读FTP服务器中的文件和目录到列表框中
该功能是通过FTPClientDlg.cpp中的CFTPClientDlg::LoadListofFtpFiles(void)来实现的,其代码如下。
voidCFTPClientDlg::LoadListofFtpFiles(void)
{
m_listFiles.ResetContent();//清空列表框
//构建一个FTP文件操作类对象,同时把FTP连接指针传递给该对象,
//打开一个文件查找对话
CFtpFileFindfFiles(m_pConnection);
CstringstrFileName;//用来保存文件名
BOOLbMoreFiles;//用来设置文件搜索状态
//利用默认的方法找到第一个文件,同时找到文件列表
bMoreFiles=fFiles.FindFile(NULL);
while(bMoreFiles)//文件搜索,直到最后一个文件
{
bMoreFiles=fFiles.FindNextFile();//查找下一个文件
strFileName=fFiles.GetFileName();//获取该文件名
if(fFiles.IsDirectory())//若为目录,则在名后加一个标志
strFileName ="<DIR>";
m_listFiles.AddString(strFileName);//将文件名添加到列表框中
}
fFiles.Close();//关闭文件查找对话框
}
(3)下载FTP服务器中的文件
下载文件是通过单击对话框中的“下载文件”按钮来实现的(调用FTPClientDlg.cpp中的CFTPClientDlg::OnBnClickedButtondownloadfile()),其具体实现是利用CFileDialog的保存功能来完成文件下载的,其主要代码如下。
voidCFTPClientDlg::OnBnClickedButtondownloadfile()
{
UpdateData(TRUE);//从对话框中获取数据
m_listFiles.GetText(m_listFiles.GetCurSel(),m_strFile);
//将列表框选中的项的值赋给m_strFile(选中的文件或目录)
if(m_strFile!="")
{
if(m_strFile.Right(5)=="<DIR>")//判断用户选择的是否目录
MessageBox(_T("无法下载目录!"));//如果是目录,报错
else
{
//打开文件对话框,询问下载位置
CFileDialogfiledlg(FALSE,NULL,m_strFile);
if(filedlg.DoModal()==IDOK)
{
//确定地址后开始下载文件
if(!m_pConnection->GetFile(m_strFile,filedlg.GetFileName()))
MessageBox(_T("无法下载文件!"));//下载出错
else
MessageBox(_T("文件下载完毕!"));//下载成功
}
}
}
}
4.最终实现界面,如图2所示。
图2程序运行界面
四、结束语
只要安装.NET2.0且FTP服务器能提供正常的服务,本客户端程序可以运行在WindowsXP(SP2)、Windows2000pro/server下。若FTP服务器没有正常运行,则无法连接,提示:“与服务器的连接被重置”。利用WinInet不仅可以实现FTP客户端程序,还可以方便地编写HTTP等其它客户端程序。
参考文献:
[1]VisualC#.NET面向程序设计教程赵卫伟机械工业出版社2006年5月第1版
[2]VisualC .NET应用编程150例王兴晶电子工业出版社2003年8月第1版
[3]MSDN(msdn.microsoft.com)
Tags:
发布:crazyapple
㈧ ftp是什么
FTP是文件传输协议,服务器中存有大量的共享软件和免费资源,要想从服务器中把文件传送到客户机上或者把客户机上的资源传送至服务器,就必须在两台机器中进行文件传送,此时双方必须要共同遵守一定的规则。FTP就是用来在客户机和服务器之间实现文件传输的标准协议。它使用客户/服务器模式,客户程序把客户的请求告诉服务器,并将服务器发回的结果显示出来。而服务器端执行真正的工作,比如存储、发送文件等。
如果用户要将一个文件从自己的计算机上发送到另一台计算机上,称为是FTP的上载,而更多的情况是用户从服务器上把文件或资源传送到客户机上,称之为FTP的下载。在Internet上有一些计算机称为FTP服务器,它存储了许多允许存取的文件,如:文本文件、图像文件、程序文件、声音文件、电影文件等。
FTP系统是一个通过Internet传送文件的系统。FTP客户程序必须与远程的FTP服务器建立连接并登录后,才能进行文件的传输。通常,一个用户必须在FTP服务器进行注册,即建立用户帐号,拥有合法的登录用户名和密码后,才有可能进行有效的FTP连接和登录。
大多数站点提供匿名FTP服务,即这些站点允许任何一个用户免费登录到它们的机器上,并从其上复制文件。这类服务器的目的就是想社会公众提供免费的文件拷贝服务,因此,它不要求用户事先在该服务器进行注册。与这类“匿名”FTP服务器建立连接时,用户名一般是anonymous,而口令可以使用任意字符串,一种比较常用的是使用你的电子邮件地址作为口令。但这个口令既不进行校验,也不是强制的。
另一类FTP服务器在进入该服务器之前,必须先向该服务器的系统管理员申请用户名及密码,即非匿名FTP服务器,他通常提供内部使用或提供收费咨询服务。
FTP是基于客户机/服务器模式的服务系统,它油客户软件、服务器软件和FTP通信协议三部分组成。FTP客户软件作为一种应用程序,运行在客户计算机上。用户使用FTP命令与FTP服务器建设连接或传送文件,一般操作系统内置标准FTP命令,标准浏览器也支持FTP协议,当然也可以使用一些专用的FTP软件。FTP服务器软件运行在远程主机上,并设置一个名叫anonymous的公共用户帐号,向用户开放。FTP客户与服务器之间将在内部建立两条TCP连接:一条是控制连接,主要用于传输命令和参数;另一条是数据连接,主要用于传送文件。
㈨ 什么是FTP软件
FTP(File
Transfer
Protocol),是文件传输协议的简称。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。
FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
需要进行远程文件传输的计算机必须安装和运行ftp客户程序。而FTP
软件就是所谓的FTP
客户端,便于管理FTP
上面的文件,可以上传也可以下载,现在很多大型论坛的资源都是使用FTP
下载的
比较出名的FTP软件有
Fresh
FTP
CuteFTP
㈩ ftp是什么意思呢
FTP表示用来传送文件的协议。
它是为了我们能够在Internet上互相传送文件而制定的的文件传送标准,规定了Internet上文件如何传送。也就是说,通过FTP协议,我们就可以跟Internet上的FTP服务器进行文件的上传(Upload)或下载(Download)等动作。和其他Internet应用一样,FTP也是依赖于客户程序/服务器关系的概念。在Internet上有一些网站,它们依照FTP协议提供服务,让网友们进行文件的存取,这些网站就是FTP服务器。网上的用户要连上FTP服务器,就要用到FPT的客户端软件,通常Windows都有“ftp”命令,这实际就是一个命令行的FTP客户程序,另外常用的FTP客户程序还有CuteFTP、Ws_FTP、FTPExplorer等。
要连上FTP服务器(即“登陆”),必须要有该FTP服务器的帐号。如果是该服务器主机的注册客户,你将会有一个FTP登陆帐号和密码,就凭这个帐号密码连上该服务器。但Internet上有很大一部分FTP服务器被称为“匿名”(Anonymous)FTP服务器。这类服务器的目的是向公众提供文件拷贝服务,因此,不要求用户事先在该服务器进行登记注册。
FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。
1、ASCII传输方式:假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
2、二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
