2011-11-24 4 views
4

안녕하세요. DownloadFileAsync를 사용하여 파일 다운로더 클래스에서 작업하고 있습니다. 정상적인 상황에서는 모든 것이 정상적으로 작동합니다. 그러나 파일을 다운로드하고 네트워크 연결을 비활성화 할 때 오류를 발생 시키거나 콜백을 호출하지 않고 진행률을 무한정 중지합니다. 아이디어를 어떻게 처리 할 수 ​​있습니까? 많은 감사.WebClient 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에서 문제가 발생합니다. Win7에서는 모든 것이 정상입니다.

+0

몇 가지 코드를 게시 할 수 있습니까? – slugster

+0

동일한 문제가 발생했습니다. 문제의 해결책을 찾았습니까? –

답변

1

이벤트 처리기를 WebClient.OpenReadCompleted 이벤트에 추가하십시오. OpenReadCompletedEventArgs에는 오류가 발생하면 Error에 대한 부울 속성이 있습니다.

+0

도움을받지 못했습니다 :(OpenReadCompleted도 발생하지 않습니다.) – rapt0r

+0

app.config에서 [System.Net Logging] (http://msdn.microsoft.com/en-us/library/ty48b824.aspx)을 켜보십시오. 거기에서 사용할 수있는 디버그 정보가 있습니다. – Simon

관련 문제