使用VB.Net的后台智能传输(BITS)

时间:2012-02-11 09:24:45

标签: vb.net microsoft-bits

我正在尝试使用MS BITS(后台智能传输服务)将文件从许多计算机上传到服务器,但我读到的唯一有用的例子是StackOverFlow,这里是:

Imports SharpBits.Base         
Using b As New BitsManager()
     mynewjob = b.CreateJob("jobname", JobType.Upload)
     mynewjob.AddFile("\\ServerName\BitsUploads\File.txt", "C:\File.exe")
     mynewjob.Resume()
End Using

但坦率地说,我不知道如何处理有关BITS工作管理的全部事情,而且我找不到一个完整的例子来说明管理是如何做到的,请为此我需要帮助。

1 个答案:

答案 0 :(得分:0)

最后我找到了答案, 只是, 首先,将JobProgressTimeout添加到某个值。 其次,将代码放在一个循环中,以便继续检查BITS作业执行的状态:

    Dim oJobStatus As System.Net.BITS.JobState = 0
    oJobStatus = sJobStatus

    Try
        If oJobStatus = System.Net.BITS.JobState.Transferred Then
            MsgBox("Job transfered")
            Return True
        End If

        If oJobStatus = System.Net.BITS.JobState.Acknowledged Then
            MsgBox("Job transfered")
            Return True
        End If

        If oJobStatus = System.Net.BITS.JobState.Error Then

            MsgBox("Job cancelled")
            Return True
        End If

        If oJobStatus = System.Net.BITS.JobState.Cancelled Then
            MsgBox("Job cancelled")
            Return True
        End If

        Return True
    Catch ex As Exception
        msgbox(ex.Message)
        Return True
    End Try