Cómo subir archivos via FTP programaticamente

01/10/2008 - 10:14 por Don Juan | Informe spam
Hola a todos.
Tengo una cuenta FTP con los permisos de modificar.
Ahora lo hago todo a la mano, creo archivos que los pongo en el FTP, pero
cómo hacer que la aplicación la haga programáticamente?

(VB o C#).
Muchas gracias.

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
01/10/2008 - 11:24 | Informe spam
"Don Juan" wrote in message
news:
Hola a todos.
Tengo una cuenta FTP con los permisos de modificar.
Ahora lo hago todo a la mano, creo archivos que los pongo en el FTP, pero
cómo hacer que la aplicación la haga programáticamente?




using System.Net;
...
FtpWebRequest request =
(FtpWebRequest)WebRequest.Create("ftp://...(direccion servidor)");
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(usuario, password);
request.UseBinary = true;
Stream requestStream = request.GetRequestStream();
using (FileStream fs = new FileStream(archivoAEnviar, FileMode.Open,
FileAccess.Read))
{
const int tamañoBloque = 4096;
byte[] buffer = new byte[tamañoBloque];
int bytesLeidos = 0;
do
{
bytesLeidos = fs.Read(buffer, 0, tamañoBloque);
if (bytesLeidos > 0) requestStream.Write(buffer, 0, bytesLeidos);
} while (bytesLeidos > 0);
}
requestStream.Close();
response = (FtpWebResponse)request.GetResponse();
if (!response.StatusDescription.StartsWith("226"))
{
//Ha habido un error
}
Respuesta Responder a este mensaje
#2 alskare
01/10/2008 - 21:35 | Informe spam
Una función que me ha sacado de muchos problemas ha sido la siguiente:

My.Computer.Network.UploadFile(FicheroOrigen, New Uri("ftp://" +
_ServidorFTP + "/" + FicheroRemoto), New NetworkCredential(_Usuario,
_Password), False, 10000)



"Alberto Poblacion"
escribió en el mensaje news:
"Don Juan" wrote in message
news:
Hola a todos.
Tengo una cuenta FTP con los permisos de modificar.
Ahora lo hago todo a la mano, creo archivos que los pongo en el FTP, pero
cómo hacer que la aplicación la haga programáticamente?




using System.Net;
...
FtpWebRequest request =
(FtpWebRequest)WebRequest.Create("ftp://...(direccion servidor)");
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(usuario, password);
request.UseBinary = true;
Stream requestStream = request.GetRequestStream();
using (FileStream fs = new FileStream(archivoAEnviar, FileMode.Open,
FileAccess.Read))
{
const int tamañoBloque = 4096;
byte[] buffer = new byte[tamañoBloque];
int bytesLeidos = 0;
do
{
bytesLeidos = fs.Read(buffer, 0, tamañoBloque);
if (bytesLeidos > 0) requestStream.Write(buffer, 0, bytesLeidos);
} while (bytesLeidos > 0);
}
requestStream.Close();
response = (FtpWebResponse)request.GetResponse();
if (!response.StatusDescription.StartsWith("226"))
{
//Ha habido un error
}


Respuesta Responder a este mensaje
#3 Don Juan
02/10/2008 - 08:54 | Informe spam
Muchas gracias por sus respuestas!


"alskare" wrote in message
news:umn1iz$
Una función que me ha sacado de muchos problemas ha sido la siguiente:

My.Computer.Network.UploadFile(FicheroOrigen, New Uri("ftp://" +
_ServidorFTP + "/" + FicheroRemoto), New NetworkCredential(_Usuario,
_Password), False, 10000)



"Alberto Poblacion"
escribió en el mensaje news:
"Don Juan" wrote in message
news:
Hola a todos.
Tengo una cuenta FTP con los permisos de modificar.
Ahora lo hago todo a la mano, creo archivos que los pongo en el FTP,
pero cómo hacer que la aplicación la haga programáticamente?




using System.Net;
...
FtpWebRequest request =
(FtpWebRequest)WebRequest.Create("ftp://...(direccion servidor)");
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(usuario, password);
request.UseBinary = true;
Stream requestStream = request.GetRequestStream();
using (FileStream fs = new FileStream(archivoAEnviar, FileMode.Open,
FileAccess.Read))
{
const int tamañoBloque = 4096;
byte[] buffer = new byte[tamañoBloque];
int bytesLeidos = 0;
do
{
bytesLeidos = fs.Read(buffer, 0, tamañoBloque);
if (bytesLeidos > 0) requestStream.Write(buffer, 0, bytesLeidos);
} while (bytesLeidos > 0);
}
requestStream.Close();
response = (FtpWebResponse)request.GetResponse();
if (!response.StatusDescription.StartsWith("226"))
{
//Ha habido un error
}






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida