none
Download file FTP para computador local RRS feed

  • Pergunta

  • Boa noite a todos, estou o dia inteiro tentando colocar uma opção de download em minha aplicação, mas quando realizo o download ele é salvo no servidor web e não na maquina local, abaixo o segue meu código. 

    Public Function download(ByVal remoteFile As String, ByVal localFile As String) As Boolean
            Try
                ftpRequest = DirectCast(FtpWebRequest.Create(Convert.ToString(host + "/") & remoteFile), FtpWebRequest)
                ftpRequest.Credentials = New NetworkCredential(user, pass)
                ftpRequest.UseBinary = True
                ftpRequest.UsePassive = True
                ftpRequest.KeepAlive = True
                ftpRequest.Method = WebRequestMethods.Ftp.DownloadFile
                ftpResponse = DirectCast(ftpRequest.GetResponse(), FtpWebResponse)
                ftpStream = ftpResponse.GetResponseStream()
                Dim ResponseDescription As String = String.Empty
                Dim localFileStream As FileStream = New FileStream(localFile, FileMode.Create)

                Dim cl As Long = ftpResponse.ContentLength
                Dim bufferSize As Integer = 2048
                Dim readCount As Integer
                Dim buffer As Byte() = New Byte(bufferSize) {}
                readCount = ftpStream.Read(buffer, 0, bufferSize)
                While (readCount > 0)
                    localFileStream.Write(buffer, 0, readCount)
                    readCount = ftpStream.Read(buffer, 0, bufferSize)
                End While
                ftpStream.Close()
                localFileStream.Close()
                Return True
            Catch ex As Exception
                Erro = "Erro DAL: " & ex.Message
                Return False
            Finally
                ftpStream = Nothing
                ftpResponse = Nothing
                ftpRequest = Nothing
            End Try 
       End Function

    terça-feira, 23 de junho de 2015 23:08

Respostas

  • Boa tarde Leandro,

    Tente desta forma, você vai abrir a caixa do Windows e selecionar o arquivo.

    Dim SalvaImagem As Boolean = False
    Dim nomeArquivo As String = ""
    Dim OpenDlg As New OpenFileDialog()        
    OpenDlg.Filter = "OfficeFiles|*.doc;*.docx;*.xls;*.xlsx;*.txt;*.pdf;*.jpg;*.jpeg;*.bmp;*.msg"
    OpenDlg.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Personal)
    OpenDlg.FilterIndex = 1
    OpenDlg.Multiselect = False
    OpenDlg.Title = "Selecione o arquivo para inserir"
    
    If (OpenDlg.ShowDialog() = Windows.Forms.DialogResult.OK) Then
      nomeArquivo = OpenDlg.FileName
      SalvaImagem = True
    Else
        Exit Sub
    End If

    Fico no aguardo,


    Ricardo Cortes Microsoft Contingent Staff

    Esse contedo e fornecido sem garantias de qualquer tipo, seja expressa ou implicita.

    MSDN Community Support

    • Sugerido como Resposta Cristopher C I_ quinta-feira, 25 de junho de 2015 18:52
    • Marcado como Resposta Cristopher C I_ sexta-feira, 26 de junho de 2015 13:29
    quinta-feira, 25 de junho de 2015 18:51