ftp编程问题 (100分)

  • 主题发起人 主题发起人 小甘
  • 开始时间 开始时间

小甘

Unregistered / Unconfirmed
GUEST, unregistred user!
我在VB中使用Internet Transfer 控件完成下载的功能.代码是这样:
With Iner
.RequestTimeout = 0
.URL = "ftp://www.abc.com"
.username = "username"
.password = "password"
.Execute , "GET default.asp c:/default.asp" - ----A
.Execute , "GET Config.asp c:/Config.asp" - ----B
End With
当我只写上A句时,可顺利下载,但A、B两句同时写上,就会出现错误提示:"仍在执行上一请求"
我想一次性下载多个文件,即上面代码顺利执行,应该还加上一些什么代码?
谢谢各位了!
 
用到多线程
 
有没有别的方法呢?
 
你可以建个列表把要下载的文件保存起来
然后再一个个下载, 那个控件本身是只能一个个文件下载的。
 
我不懂vb,不过可以告诉你思路
execute是立即返回的,下载在后台进行,解决的方案是
放一个比较全局的变量,叫is_complete吧
首先 is_complete=false
然后执行第一个execute
有一个事件:StateChanged,当 State 变为 icResponseCompleted 时设置 is_complete=true
在执行第二个execute之前一直等待is_complete变量转变为true
当is_complete变量转变为true的时候才执行第二个execute
 

Similar threads

回复
0
查看
1K
不得闲
D
回复
0
查看
865
DelphiTeacher的专栏
D
D
回复
0
查看
834
DelphiTeacher的专栏
D
后退
顶部