Para subir un archivo usando el protocolo FTP desde una aplicación ASP.NET 2, utiliza la clase FtpWebRequest
.
No olvides importar System.IO
y System.Net
al inicio de tu código:
Imports System.Net
Imports System.IO
Este es el código para subir el archivo:
'Subir Archivo por FTP
' Configurar el Request
Dim ElRequest As FtpWebRequest = DirectCast(WebRequest.Create("ftp://servidorejemplo.com/folder1/archivo.zip"), FtpWebRequest)
ElRequest.Credentials = New NetworkCredential("usuario", "password")
ElRequest.Method = WebRequestMethods.Ftp.UploadFile
' Leer archivo
Dim BufferArchivo() As Byte = File.ReadAllBytes("D:Inetpubwwwrootarchivo.zip")
' Subir archivo
Dim ElStream As System.IO.Stream = ElRequest.GetRequestStream()
ElStream.Write(BufferArchivo, 0, BufferArchivo.Length)
ElStream.Close()
ElStream.Dispose()
Solamente tienes que utilizar tus datos reales para la ruta del ftp, ruta local, nombre de usuario y contraseña.
Nota:
Si te sale este error:
Unable to cast object of type 'System.Net.FileWebRequest' to type 'System.Net.FtpWebRequest'
Quiere decir que estás haciendo algo similar a esto:
DirectCast(WebRequest.Create("c:\folder1\archivo.zip")
Escribe la ruta usando ftp://
en vez de c:
y se solucionará el error antes mencionado.