无法使用 DownloadFileAsync 完成下载

Unable to complete download using DownloadFileAsync

我正在尝试使用简单的基本 webclient 指令下载文件,但是文件没有下载完成。如果我尝试下载一个 10mb/100mb 的文件,它要么下载一个 7kb 的文件,要么下载一个空文件。我只是使用 ProgressBar 来显示下载进度。这是我正在使用的代码。

Imports System.Net

Public Class Form1

    Dim WithEvents wc As New WebClient

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        wc.DownloadFileAsync(New Uri("http://cachefly.cachefly.net/100mb.test"), "100mb.test")
End Sub

Private Sub wc_DownloadFileCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles wc.DownloadFileCompleted
    ProgressBar1.Visible = False
    ProgressBar1.Value = 0
End Sub

Private Sub wc_DownloadProgressChanged(sender As Object, e As DownloadProgressChangedEventArgs) Handles wc.DownloadProgressChanged
    ProgressBar1.Visible = True
    ProgressBar1.Value = e.ProgressPercentage
End Sub

End Class

最后,我通过this forum找到了解决方案。我刚刚将 headers 添加到 webclient,它工作正常。这是供其他人参考的代码。

wc.Headers.Add("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0)")

在调用 DownloadFileAsync 函数之前添加它。