C#在下载文件时挂起

时间:2016-06-12 05:57:26

标签: c# download downloading

下载并挂起20%40% - > client_DownloadFileCompleted即好像已完成但文件未完全下载

如何解决?

MessageBox.Show("Пожалуйста ожидайте начинаем процесс скачивание клиента", "тест",
 MessageBoxButtons.OK, MessageBoxIcon.Information);
WebClient client = new WebClient();
client.Proxy = null;
client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(client_DownloadProgressChanged);
client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_DownloadFileCompleted);
client.DownloadFileAsync(new Uri("http://***/test.7z"), @"test.7z");


    void client_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
    {
        MessageBox.Show("Клиент успешно скачался,Ожидайте идет процесс распаковки.", "тест", MessageBoxButtons.OK, MessageBoxIcon.Information);

1 个答案:

答案 0 :(得分:0)

看起来像VB.NET DownloadFileAsync fires completion event but doesn't download的副本,程序员没有检查AsyncCompletedEventArgs.Cancelled和.Error属性。

您假设事件会因下载成功而触发,但实际上下载完成后会触发;但它可能会报告下载失败。检查传递给事件的事件args以查看它是否成功。