none
Avisar quando terminar de baixar um arquivo pelo programa? RRS feed

  • Pergunta

  • Olá! É o seguinte, tenho este código que uso para baixar arquivos da internet pelo programa, com ProgressBar, porém eu queria que aparecesse uma MsgBox avisando quando o download foi completado. Vejam o código:

    Imports System.Net
    Public Class Form1
        WithEvents webclient1 As New WebClient
    
        Private Sub webclient1_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles webclient1.DownloadProgressChanged
            ProgressBar1.Maximum = e.TotalBytesToReceive
            ProgressBar1.Value = e.BytesReceived
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim salvarDLG1 As SaveFileDialog = New SaveFileDialog
            salvarDLG1.Title = "Salvar Como"
            salvarDLG1.Filter = "Arquivo do WinRAR|*.rar"
            salvarDLG1.FileName = ""
            DialogResult = salvarDLG1.ShowDialog
            If DialogResult = DialogResult.OK Then
                webclient1.DownloadFileAsync(New Uri("http://www.site.com/teste.rar"), salvarDLG1.FileName)
            End If        
        End Sub
    End Class

    Como faço isso? Obrigado!

     
    domingo, 9 de fevereiro de 2014 18:40

Respostas

  • Olá,

    Use o evento DownloadFileCompleted do WebClient.


    Herbert Lausmann



    • Editado Herbert Lausmann domingo, 9 de fevereiro de 2014 20:40
    • Marcado como Resposta Free4k segunda-feira, 10 de fevereiro de 2014 01:41
    domingo, 9 de fevereiro de 2014 20:40
  • Funcionou perfeitamente, obrigado novamente! Código completo para o pessoal:

    Imports System.Net
    Public Class Form1
        WithEvents webclient1 As New WebClient
    
        Private Sub webclient1_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles webclient1.DownloadProgressChanged
            ProgressBar1.Maximum = e.TotalBytesToReceive
            ProgressBar1.Value = e.BytesReceived
        End Sub
    
    Private Sub webclient1_DownloadFileCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles webclient1.DownloadFileCompleted
            MsgBox("Download completo!", MsgBoxStyle.Exclamation)
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim salvarDLG1 As SaveFileDialog = New SaveFileDialog
            salvarDLG1.Title = "Salvar Como"
            salvarDLG1.Filter = "Arquivo do WinRAR|*.rar"
            salvarDLG1.FileName = ""
            DialogResult = salvarDLG1.ShowDialog
            If DialogResult = DialogResult.OK Then
                webclient1.DownloadFileAsync(New Uri("http://www.site.com/teste.rar"), salvarDLG1.FileName)
            End If        
        End Sub
    End Class
    • Editado Free4k segunda-feira, 10 de fevereiro de 2014 01:40
    • Marcado como Resposta Free4k segunda-feira, 10 de fevereiro de 2014 01:41
    segunda-feira, 10 de fevereiro de 2014 00:49

Todas as Respostas

  • Olá,

    Use o evento DownloadFileCompleted do WebClient.


    Herbert Lausmann



    • Editado Herbert Lausmann domingo, 9 de fevereiro de 2014 20:40
    • Marcado como Resposta Free4k segunda-feira, 10 de fevereiro de 2014 01:41
    domingo, 9 de fevereiro de 2014 20:40
  • Funcionou perfeitamente, obrigado novamente! Código completo para o pessoal:

    Imports System.Net
    Public Class Form1
        WithEvents webclient1 As New WebClient
    
        Private Sub webclient1_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles webclient1.DownloadProgressChanged
            ProgressBar1.Maximum = e.TotalBytesToReceive
            ProgressBar1.Value = e.BytesReceived
        End Sub
    
    Private Sub webclient1_DownloadFileCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles webclient1.DownloadFileCompleted
            MsgBox("Download completo!", MsgBoxStyle.Exclamation)
        End Sub
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim salvarDLG1 As SaveFileDialog = New SaveFileDialog
            salvarDLG1.Title = "Salvar Como"
            salvarDLG1.Filter = "Arquivo do WinRAR|*.rar"
            salvarDLG1.FileName = ""
            DialogResult = salvarDLG1.ShowDialog
            If DialogResult = DialogResult.OK Then
                webclient1.DownloadFileAsync(New Uri("http://www.site.com/teste.rar"), salvarDLG1.FileName)
            End If        
        End Sub
    End Class
    • Editado Free4k segunda-feira, 10 de fevereiro de 2014 01:40
    • Marcado como Resposta Free4k segunda-feira, 10 de fevereiro de 2014 01:41
    segunda-feira, 10 de fevereiro de 2014 00:49