WebClient DownloadFileAsync hangs

本文关键字:hangs DownloadFileAsync WebClient | 更新日期: 2023-09-27 18:15:32

大家好。我正在使用DownloadFileAsync制作文件下载器类。在正常情况下,一切都很好。但是当我下载文件并禁用网络连接时,下载进度只是无限期停止,没有引发任何错误或调用任何回调。有什么办法处理这种情况吗?多谢。

_client.Proxy = WebRequest.DefaultWebProxy;
_client.DownloadProgressChanged += (sender, argv) => { actionCallback(argv.ProgressPercentage); }
_client.DownloadFileCompleted += (sender, argv) => { 
      if (argv.Error != null) { 
          _exc = argv.Error;
      } 
      set event
}
 Task.Factory.StartNew(() => {
     _client.DownloadFileAsync(request, targetFileName);
     thread sync
     if (_exc != null) {
         logger.ErrorException(exc);
         throw;
     }

这个问题出现在Vista和2k8下。

WebClient DownloadFileAsync hangs

为WebClient添加一个事件处理程序。OpenReadCompleted事件。如果发生错误,OpenReadCompletedEventArgs有一个布尔属性Error。