在现在的项目中,文件上传的功能模块归我完成,在其中我遇到以下难点:
我用的是vb自带的Inet控件,我在显示某目录下的子目录及文件时,用 "dir /myfolder/"命令,之后用Inet的GetChunk方法取得该目录下的信息,现在我的问题是:如果myfolder目录存在,那么程序很快就会返回该目录下的信息,但如果myfolder目录不存在,系统需要2、3分钟才能显示该目录下的信息,现在项目卡在这里了
程序代码如下:
Inet1.Execute "", "dir /myfolder/"
right1 = Inet1.StillExecuting
Do While right1
right1 = Inet1.StillExecuting
DoEvents
Loop
Dim vtData As Variant '数据变量。
Dim strData As String: strData = ""
Dim bDone As Boolean: bDone = False
'取得第一块
vtData = Inet1.GetChunk(1024, icString)
right1 = Inet1.StillExecuting
Do While right1
right1 = Inet1.StillExecuting
DoEvents
Loop
Do While Not bDone
strData = strData & vtData
DoEvents
'取得下一块。
vtData = Inet1.GetChunk(1024, icString)
If Len(vtData) = 0 Then
bDone = True
End If
Loop
text1.Text = strData请问为什么?!!应如何解决?麻烦大家了!
我用的是vb自带的Inet控件,我在显示某目录下的子目录及文件时,用 "dir /myfolder/"命令,之后用Inet的GetChunk方法取得该目录下的信息,现在我的问题是:如果myfolder目录存在,那么程序很快就会返回该目录下的信息,但如果myfolder目录不存在,系统需要2、3分钟才能显示该目录下的信息,现在项目卡在这里了
程序代码如下:
Inet1.Execute "", "dir /myfolder/"
right1 = Inet1.StillExecuting
Do While right1
right1 = Inet1.StillExecuting
DoEvents
Loop
Dim vtData As Variant '数据变量。
Dim strData As String: strData = ""
Dim bDone As Boolean: bDone = False
'取得第一块
vtData = Inet1.GetChunk(1024, icString)
right1 = Inet1.StillExecuting
Do While right1
right1 = Inet1.StillExecuting
DoEvents
Loop
Do While Not bDone
strData = strData & vtData
DoEvents
'取得下一块。
vtData = Inet1.GetChunk(1024, icString)
If Len(vtData) = 0 Then
bDone = True
End If
Loop
text1.Text = strData请问为什么?!!应如何解决?麻烦大家了!
设置Inet1.RequestTimeout的属性您试过没有,我试了怎么不行呀,另外它的单位是什么?分、秒、毫秒?
API最好、winsock次之(一次登录FTP后,最少过1-3分钟才行)、inte最不好!
非常感谢您的回答。请问能不能发给我一些api实现的ftp的源代码?小弟初学vb,不知该用哪些api,先谢您了。
[email protected]