如题,具体思路是在一个ListBox里保存着所有要下载的文件信息,然后用for循环去调用唯一的winsock控件进行下载。
但出现的问题是for循环不等winsock接收完第一个文件的所有数据,又调用其下载另一个,这样就出错了,该如何解决?

解决方案 »

  1.   

    用等待标志等待下载结束。
    private m_Waiting as booleanprivate sub cmdDownload_Click()
        dim i as long
        for i=0 to List1.ListCount-1
            m_Wating = true
            Inet1.Execute ...
            while m_Wating
                DoEvents
            wend
        next
    end subprivate sub Inet1_StateChanged(ByVal State As Integer)
        if State=icResponseCompleted then
            ...
            m_Wating = False
        end if
    end sub