Fórum Conectar a um servidor FTP (protocolo SFTP) #378417
27/05/2010
0
Bom dia estou querendo conectar a um servidor de FTP (protocolo SFTP)
Achei alguns componentes pagos que resolveram por hora isso, mas necessito de algo Free ou diretamente no código
Sei que existe uma classe FtpWebRequest, mas não sei como utilizar. Alguém possui algum tutorial (preferencia em português) de como utilizar isso?
Trabalho com VS2008 + WinForms + VB.NET
Achei alguns componentes pagos que resolveram por hora isso, mas necessito de algo Free ou diretamente no código
Sei que existe uma classe FtpWebRequest, mas não sei como utilizar. Alguém possui algum tutorial (preferencia em português) de como utilizar isso?
Trabalho com VS2008 + WinForms + VB.NET
Fábio Cruz
Curtir tópico
+ 0
Responder
Posts
27/05/2010
Fábio Cruz
Consegui resolver com essa função
É necessário ter instalado o WinSCP no Cliente e Configurado
Public Function EnviaFTP(ByVal sArquivo As String) As Boolean
Dim success As Boolean
'Utilizando o WinSCP para enviar o arquivo
Dim winscp As Process = New Process
winscp.StartInfo.FileName = "C:\Arquivos de Programas\WinSCP\winscp.com"
winscp.StartInfo.Arguments = "/log=" & logName
winscp.StartInfo.UseShellExecute = False
winscp.StartInfo.RedirectStandardInput = True
winscp.StartInfo.RedirectStandardOutput = True
winscp.StartInfo.CreateNoWindow = True
winscp.Start()
winscp.StandardInput.WriteLine("option batch abort")
winscp.StandardInput.WriteLine("option confirm on")
winscp.StandardInput.WriteLine("open CrescaBR")
winscp.StandardInput.WriteLine("ls")
winscp.StandardInput.WriteLine("put " & sArquivo)
winscp.StandardInput.Close()
Dim output As String = winscp.StandardOutput.ReadToEnd()
winscp.WaitForExit()
Dim log As XPathDocument = New XPathDocument(logName)
Dim ns As XmlNamespaceManager = New XmlNamespaceManager(New NameTable())
ns.AddNamespace("w", "http://winscp.net/schema/session/1.0")
Dim nav As XPathNavigator = log.CreateNavigator()
If winscp.ExitCode <> 0 Then
MessageBox.Show("Erro")
For Each message As XPathNavigator In nav.Select("//w:message", ns)
MessageBox.Show(message.Value)
Next
success = False
Else
success = True
End If
Return success
End FunctionÉ necessário ter instalado o WinSCP no Cliente e Configurado
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)