CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  控件

怎样利用Inet控件下载FTP服务器上面的文件??(急,送分!!)

楼主hzwcs(zw)2002-05-11 16:50:23 在 VB / 控件 提问

本人想编写一个程序,下载某一个FTP服务器上面的文件到本地的计算机当中  
  可是由于本人对VB不熟,不知道能不能利用vb中的控件inet进行操作?  
  如果可以,它的格式是什么样的呢?  
   
  是不是     Inet1.Execute   ftpIP,   "get   ",FTPFile,   LocalFile     ?? 问题点数:100、回复次数:12Top

1 楼liuzhanwen(研究一下!)回复于 2002-05-11 17:19:04 得分 0

http://www.jinesc.com/myweb/main.asp?room=1030&page=1  
   
   
  希望对你有帮助的  
  Top

2 楼liuzhanwen(研究一下!)回复于 2002-05-11 17:20:22 得分 0

Private   Sub   Command1_Click()  
  Dim   i   As   Integer  
  For   i   =   Text2   To   Text3  
  Text1   =   Text4   &   Format(i,   "0000")   &   Text6  
  Text1.Refresh  
  Download   Text4   &   Format(i,   "0000")   &   Text6,   Text5   &   Format(i,   "0000")   &   Text7  
  Next  
  End   Sub  
     
  Private   Sub   Download(UrtFile   As   String,   LocalFile   As   String)  
  Dim   bData()   As   Byte             '数据变量  
  Dim   intFile   As   Integer       '可用文件变量  
  Dim   i   As   Integer  
  Dim   ttt   As   String  
          intFile   =   FreeFile()             '将   intFile   设置为未使用的文件  
          '   OpenURL   方法的结果首先传入   Byte   数组,  
          '然后将   Byte   数组保存到磁盘。  
          On   Error   Resume   Next  
          Kill   LocalFile  
          On   Error   GoTo   0  
          bData()   =   Inet1.OpenURL(UrtFile,   icByteArray)  
          Open   LocalFile   For   Binary   Access   Write   As   #intFile  
                  Put   #intFile,   ,   bData()  
          Close   #intFile  
          Exit   Sub  
  err1:  
  MsgBox   "error!"  
  Resume  
  End   SubTop

3 楼liuzhanwen(研究一下!)回复于 2002-05-11 17:21:17 得分 0

2.   INET   控件    
    Internet   Transfer控件提供了Internet   上最常使用的两种协议   :HTTP   和FTP。使用HTTP   协议可以连接到WWW服务器上来下载文件;使   用FTP协议则可以登录到FTP   服务器。一般的FTP命令,例如CD、GET   都可以通过Execute   方法实现。    
    下面是一个设置INET控件属性的例子。    
    inet1.URL=ftp://username:password@hostname/document    
    inet1.Protocol=2-icFTP    
    inet1.RemoteHost=hostname    
    inet1.RemotePort=21    
    inet1.Username=username    
    inet1.   Password=password    
    执行文件传输:    
    Inet1.Execute   "ftp://username:password@hostname",   _    
    "PUT"   &local_filename   &   "   UPLOAD1.TXT"    
    right1   =   Inet1.StillExecuting    
    Do   While   right1    
        right1   =   Inet1.StillExecuting    
        DoEvents    
    Loop    
    这样便实现了文件的上载。    
  Top

4 楼hzwcs(zw)回复于 2002-05-11 17:27:09 得分 0

谢谢liuzhanwen  
  文件的下载是不是将put该为get就可以了  
  Top

5 楼hzwcs(zw)回复于 2002-05-11 17:37:24 得分 0

hostname是不是就是FTP服务器的IP地址?  
  right1是不是一个逻辑变量?  
  Top

6 楼hzwcs(zw)回复于 2002-05-11 17:46:43 得分 0

好象还是有点问题啊  
  Inet1.Execute   strUrl,   "get"   &   winzip80.exe   &   sLFile  
  不能通过,其中strUrl——10.10.10.152(一个可以连接得上的IP地址)  
                            winzip80.exe——根目录下面的一个文件  
                            sLFile——值为d:\download\  
   
  Top

7 楼liuzhanwen(研究一下!)回复于 2002-05-11 17:51:57 得分 0

具体的难说了Top

8 楼liuzhanwen(研究一下!)回复于 2002-05-11 17:52:58 得分 0

Private   Sub   Download(UrtFile   As   String,   LocalFile   As   String)  
  <br   />  
   
  Dim   bData()   As   Byte             '数据变量  
  <br   />  
   
  Dim   intFile   As   Integer       '可用文件变量  
  <br   />  
   
  Dim   i   As   Integer  
  <br   />  
   
  Dim   ttt   As   String  
  <br   />  
   
          intFile   =   FreeFile()             '将   intFile   设置为未使用的文件  
  <br   />  
   
          '   OpenURL   方法的结果首先传入   Byte   数组,  
  <br   />  
   
          '然后将   Byte   数组保存到磁盘。  
  <br   />  
   
          On   Error   Resume   Next  
  <br   />  
   
          Kill   LocalFile  
  <br   />  
   
          On   Error   GoTo   0  
  <br   />  
   
          bData()   =   Inet1.OpenURL(UrtFile,   icByteArray)  
  <br   />  
   
          Open   LocalFile   For   Binary   Access   Write   As   #intFile  
  <br   />  
   
                  Put   #intFile,   ,   bData()  
  <br   />  
   
          Close   #intFile  
  <br   />  
   
          Exit   Sub  
  <br   />  
   
  err1:  
  <br   />  
   
  MsgBox   "error!"  
  <br   />  
   
  Resume  
  <br   />  
   
  End   Sub  
  <br   />  
  Top

9 楼liuzhanwen(研究一下!)回复于 2002-05-11 17:53:35 得分 0

Private   Sub   Command1_Click()  
  <br   />  
   
  Dim   b()   As   Byte  
  <br   />  
   
  Inet1.Cancel  
  <br   />  
  <br   />  
   
  Inet1.Protocol   =   icHTTP  
  <br   />  
  <br   />  
   
  Inet1.URL   =   Text1.Text     '你想下东东的url  
  <br   />  
  <br   />  
   
  b()   =   Inet1.OpenURL(,   icByteArray)  
  <br   />  
   
  '建立一个暂存文件來存放取回來的   东东  
  <br   />  
   
  Open   Text2.Text   For   Binary   Access   Write   As   #1  
  <br   />  
   
  Put   #1,   ,   b()  
  <br   />  
   
  Close   #1  
  <br   />  
   
  End   Sub  
  Top

10 楼Dickson(沧海冷心)回复于 2002-05-11 18:22:47 得分 0

www.vb365.com  
  上有!  
  绝对有,去吧!Top

11 楼hzwcs(zw)回复于 2002-05-11 21:16:14 得分 0

不知道下载文件的时候能不能将正个目录拷贝下来??如果能的话,就比较方便了。Top

12 楼ameng_2002(flyfox)回复于 2002-06-03 09:17:05 得分 100

可以利用API函数,先利用internetConnect连接上FTP服务器,用FtpSetCurrentDirectory设定当前目录,然后利用FtpFindFirstFile和FtpFindNextFile查找出当前目录下面的所有文件名。找到一个文件的路径和它对应的文件名,就可以对它进行拷贝了。Top

相关问题

  • 关于:请问大虾如何用VB的INET控件调用FTP服务器
  • 用inet控件怎样判断FTP服务器上的某个文件夹是否存在?立即给分!
  • 何处有ftp服务器控件下载(愿付费)?
  • 服务器控件问题
  • response.write 服务器控件
  • 如何在nmftp控件中创建ftp服务器上的整条路径?
  • 用户控件与服务器控件
  • HTML服务器控件与ASP.NET服务器控件的区别
  • 用idftp控件连接上某个FTP服务器,怎么才能检查该服务器上是否存在某一文件?
  • 如何显示ftp服务器的目录及文件(包括子目录),并用CTreeCtrl控件显示?

关键词

  • 文件
  • 控件
  • 服务器
  • 下载
  • 协议
  • 连接
  • intfile
  • inet
  • localfile
  • urtfile

得分解答快速导航

  • 帖主:hzwcs
  • ameng_2002

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo