0

我有代码在后台工作程序中运行,它验证提到的链接(网站)是否有效。如果无效,程序会出错并继续检查另一个链接。为了实现这一点,我使用 webrequest 和 webresponse。

当后台工作人员访问链接时,问题就开始了,如果我尝试从主线程下载一些东西(如果后台工作人员不工作,这完全可以正常工作),下载没有完成。

后台工作人员代码:

Try
            Dim bgwebRequest As WebRequest
            Dim bgwebresponse As WebResponse

            bgwebRequest = WebRequest.Create(websitelink)
            bgwebRequest.Timeout = 200
            bgwebresponse = bgwebRequest.GetResponse()

            '//code for website found

  Catch ex As Exception

            '//code for website not found

  End Try

文件下载代码:

Dim download As WebClient = New WebClient

  download.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; 
  x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 
  Safari/537.36")

  download.DownloadFileAsync(New Uri(directdownloadlink), downloadpathinpc)

  AddHandler download.DownloadFileCompleted, AddressOf OnDownloadComplete1

  download.Dispose()

ondownloadcomplete1 的代码:

'//run tasks that needs to completed if download is comolete

如果 backgroundworker 正在运行,调试器永远不会到达“ondownloadcomplete1”

4

0 回答 0