Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: eldiabloxico en 19 Octubre 2008, 02:45 AM

Título: Subir txt por ftp
Publicado por: eldiabloxico en 19 Octubre 2008, 02:45 AM
Hola aqui estoy de nuevo con otra duda, esta vez con ftp, explico.

Tengo un servidor ftp, lo que a mi me gustaria, es que el programa con darle a un boton suba un txt a un servidor ftp, y el que exita lo sobreescriba, ya que seguro que habra uno, espero que me puedan ayudar, gracias.
Título: Re: Subir txt por ftp
Publicado por: seba123neo en 19 Octubre 2008, 03:03 AM
Hola,con el inet lo podes hacer..con el metodo Execute y el PUT...le tenes que pasarle el usuario ,la contraseña y el servidor..con apis me inmagino que se puede tambien...busca en internet que hay varios ejemplos..

saludos.
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 19 Octubre 2008, 03:10 AM
si no me ekivoco seria asi

Inet1.Execute "ftp://usuarios:contraseña@ftp.usuarios.lycos.es", "PUT prueba.txt"

pero nada, lo e mirado y no sube.
Título: Re: Subir txt por ftp
Publicado por: byway en 19 Octubre 2008, 03:19 AM
revisa esto :

http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/209-inet-ftp.htm

esta completo.
Título: Re: Subir txt por ftp
Publicado por: cobein en 19 Octubre 2008, 03:35 AM
Aca tenes una clase, usa APIs y tiene todo lo que necesitas para hacer eso.

http://www.advancevb.com.ar/page/index.php?option=com_content&view=article&id=49:ftp-class&catid=39:code&Itemid=56
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 19 Octubre 2008, 03:48 AM
Siento molestar, pero es que nada, lo de byway, e mirado el code que me podria ayudar, y nada, no me deja, da error, ya que solo necesito el de subir un archivo por ftp, solo ese, y el de cobein, claramente no se como usarlo, lo siento, e usado este.

Inet1.Execute "ftp://usuario:contraseña@ftp.usuarios.lycos.es", "PUT prueba.txt", "prueba.txt"

pero no sale ni error ni nada, y no se sube.
Título: Re: Subir txt por ftp
Publicado por: byway en 19 Octubre 2008, 06:08 AM
del codigo del enlace que puse de recursosvisualbasic, usando el inet :


Código (vb) [Seleccionar]


With Inet1 
     
        'Asigna la Url, es decir el nombre del Host FTP 
        .URL = "ftp://ftp.usuarios.lycos.es" 
     
        'nombre de usuario y password de la cuanta FTP 
        .UserName = "Usuario" 
        .Password = "Pass" 
     
        'Escribe el fichero en el servidor con el comando Put 
        Call .Execute(, "Put " & "prueba.txt" & " " & "prueba.txt") 
         
        DoEvents 
         
End With 



Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 19 Octubre 2008, 06:15 AM
Cita de: byway en 19 Octubre 2008, 06:08 AM
del codigo del enlace que puse de recursosvisualbasic, usando el inet :


Código (vb) [Seleccionar]
Dim El_Host As String 
     
El_Host = "ftp://" & txt_servidor 
     
With Inet1 
     
        'Asigna la Url, es decir el nombre del Host FTP 
        .URL = El_Host 
     
        'nombre de usuario y password de la cuanta FTP 
        .UserName = Usuario 
        .Password = Pass 
     
        'Escribe el fichero en el servidor con el comando Put 
        Call .Execute(, "Put " & prueba.txt & " " & prueba.txt) 
         
        DoEvents 
         
End With 




se que no se mucho del control inet, pero, ai donde se conecta al servidor?, y como relleno eso, es decir, donde pone url, que pongo ftp.usuarios.lycos.es?? y arriba en el_host que pongo?
Título: Re: Subir txt por ftp
Publicado por: byway en 19 Octubre 2008, 06:25 AM
ups se me paso pera que lo edito...

ahora que lo veo esta demas la variable lo puedes poner directo..

Código (vb) [Seleccionar]
.URL = "ftp://ftp.usuarios.lycos.es"

Código (vb) [Seleccionar]
Call .Execute(, "Put " & "prueba.txt" & " " & "prueba.txt")

primer prueba.txt es el archivo a subir con ese nombre
segundo prueba.txt es el archivo subido con ese nombre, este lo puedes cambiar
Título: Re: Subir txt por ftp
Publicado por: byway en 19 Octubre 2008, 06:54 AM
Cita de: cobein en 19 Octubre 2008, 03:35 AM
Aca tenes una clase, usa APIs y tiene todo lo que necesitas para hacer eso.

http://www.advancevb.com.ar/page/index.php?option=com_content&view=article&id=49:ftp-class&catid=39:code&Itemid=56

Muy buena cobein ... esa clase esta completa.


Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 19 Octubre 2008, 07:47 AM
me sale error, exactamente "Unable to contect to remote host"
Título: Re: Subir txt por ftp
Publicado por: vivachapas en 19 Octubre 2008, 18:58 PM
yo tb intente con el source de recursosvisualbasic.. y tb me sale error :S (lo habia posteado mas abajo) trate de solucionarlo.. pero nunca pude y busque banda de ejemplos pero no lo pude solucionar..
el error me lo tiraba en la linea del Call .Execute
pero bue.. a ver si alguno lo puede solucionar XD
Título: Re: Subir txt por ftp
Publicado por: seba123neo en 19 Octubre 2008, 19:10 PM
yo tambien pruebo y no funciona con el inet...y tambien probe hacerlo con las api's del FTP hay un ejemplo en la api guide..es como el modulo de cobein...pero tambien no anda...este no tira error...simplemente no lo sube...
Título: Re: Subir txt por ftp
Publicado por: Spider-Net en 19 Octubre 2008, 20:01 PM
Yo una vez hice un programa que subía por ftp un archivo a internet. Como tampoco lo conseguí de ninguna de las maneras lo que hice fue usar el cliente ftp de windows (que viene incorporado de serie  ;D) para subir mi archivo. Es una pequeña chapuza pero bueno.. al menos funciona xD
Código (vb) [Seleccionar]

Sub SubirArchivo()
Open "C:\datos.dat" For Output As #1
Print #1, "nombre de usuario"
Print #1, "contraseña"
Print #1, "put tuarchivo.txt"
Close #1

DoEvents

Shell "cmd /c ftp -v -i -s:C:\datos.dat ftp.tuhost.com", vbHide

DoEvents

Kill "C:\datos.dat"
End Sub


Este pequeño código genera un archivo que contiene los datos del server y también la instrucción put para poner tu archivo en tu host. Luego investigué en internet como podía usar todos esos datos para mandar el archivo al host con una sola línea y como véis en el ejemplo lo conseguí. Se sube el fichero sin problemas a internet y luego se borra el fichero que contiene los datos de login.

Supongo que al menos hace el apaño xD

Saludos!
Título: Re: Subir txt por ftp
Publicado por: ssccaann43 © en 19 Octubre 2008, 20:24 PM
Aqui tienes un source de un cliente FTP. Te ayudara un poco, no soy el creador. Pero modifique algunas cositas. Esta totalmente funcional, espero te ayude.

Cliente FTP (http://rapidshare.com/files/155584792/Cliente_FTP.rar.html)
Título: Re: Subir txt por ftp
Publicado por: seba123neo en 19 Octubre 2008, 20:32 PM
digamos que no necesitamos un cliente FTP..solo que se apriete un boton y se suba el archivo nomas...ya tenemos todas las formas para subirlo pero no anda ninguna..recien probe una forma con el winsock y lo sube al TOQUE si alguien le interesa...

saludos.
Título: Re: Subir txt por ftp
Publicado por: ssccaann43 © en 19 Octubre 2008, 20:35 PM
Si seba, pero es mejor q lo tenga todo asi puede subir y bajar archivos.
Título: Re: Subir txt por ftp
Publicado por: vivachapas en 19 Octubre 2008, 21:11 PM
seba me podes pasar la forma con el winsock x favor... a mi me interesa...
gracias
Título: Re: Subir txt por ftp
Publicado por: seba123neo en 19 Octubre 2008, 23:46 PM
aca lo pongo...

Código (vb) [Seleccionar]
Option Explicit

Private Type Datos
    Respuesta As String
    Comando As String
End Type

Dim Comandos(5) As Datos
Dim Estado As Integer
Dim Sitio As String, Usuario As String, Password As String, ArchivoRemoto As String, ArchivoLocal As String
Dim TamañoBuffer As Long
Dim EstaCerrado As Boolean

Private Sub Command1_Click()

Sitio = "ftp.tuservidor.com.ar"
Usuario = "tuusuario"
Password = "tucontraseña"
ArchivoLocal = "c:\a.txt"
ArchivoRemoto = "/carpetadetuservidor/a.txt"
Comandos(0).Respuesta = "220"
Comandos(0).Comando = "USER " + Usuario
Comandos(1).Respuesta = "331"
Comandos(1).Comando = "PASS " + Password
Comandos(2).Respuesta = "230"
Comandos(2).Comando = "TYPE I"
Comandos(3).Respuesta = "200"
Comandos(3).Comando = "PORT"
Comandos(4).Respuesta = "200"
Comandos(4).Comando = "STOR " + ArchivoRemoto
Comandos(5).Respuesta = ""
Comandos(5).Comando = ""
TamañoBuffer = 2920

Dim Nr1 As Integer
Dim Nr2 As Integer
Dim IPLocal As String

IPLocal = Winsock1.LocalIP

Do Until InStr(IPLocal, ".") = 0
    IPLocal = Left(IPLocal, InStr(IPLocal, ".") - 1) + "," + Right(IPLocal, Len(IPLocal) - InStr(IPLocal, "."))
Loop

Randomize Timer

Nr1 = Int(Rnd * 12) + 5
Nr2 = Int(Rnd * 254) + 1
Comandos(3).Comando = "PORT " + IPLocal + "," + Trim(Str(Nr1)) + "," + Trim(Str(Nr2))
Winsock2.Close

Do Until Winsock2.State = 0
    DoEvents
Loop

Winsock2.LocalPort = (Nr1 * 256) + Nr2
Winsock2.Listen
Winsock1.Close

Do Until Winsock1.State = 0
    DoEvents
Loop

Winsock1.RemoteHost = Sitio
Winsock1.RemotePort = 21
Winsock1.Connect
Estado = 0

Do Until Winsock1.State = 7 Or Winsock1.State = 9
    DoEvents
Loop

Select Case Winsock1.State
    Case 9
    MsgBox "No se pudo Conectar al Servidor " + Sitio + ".", vbOKOnly + vbInformation
    Case 7
    Open ArchivoLocal For Binary As #1
End Select

End Sub


Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

Dim tmpS As String
Winsock1.GetData tmpS, , bytesTotal
Debug.Print tmpS;

Select Case Left(tmpS, 3)
    Case Comandos(Estado).Respuesta
        Winsock1.SendData Comandos(Estado).Comando + Chr(13) + Chr(10)
        Debug.Print Comandos(Estado).Comando
        Estado = Estado + 1
    Case "150"
        Do Until Winsock2.State = 7
            DoEvents
        Loop
        Call EnviarDatos
    Case "226"
        Winsock1.Close
        Do Until Winsock1.State = 0
            DoEvents
        Loop
        MsgBox "Subida de Archivo Completa....", vbOKOnly + vbInformation
    Case Else
        MsgBox "No Hay Respuesta del Servidor: " + Left(tmpS, Len(tmpS) - 2), vbOKOnly + vbInformation
End Select

End Sub

Private Sub Winsock2_ConnectionRequest(ByVal requestID As Long)
Winsock2.Close
Do Until Winsock2.State = 0
    DoEvents
Loop
Winsock2.Accept requestID
Do Until Winsock2.State = 7
    DoEvents
Loop
End Sub

Sub EnviarDatos()
Dim Take As Long
Dim Buffer As String
If LOF(1) - Seek(1) < TamañoBuffer Then Take = LOF(1) - Seek(1) + 1 Else Take = TamañoBuffer
Buffer = Input(Take, 1)
Winsock2.SendData Buffer

If Take < TamañoBuffer Then
    Close #1
    EstaCerrado = True
End If
End Sub


Private Sub Winsock2_SendComplete()
If EstaCerrado = True Then
    Winsock2.Close
Do Until Winsock2.State = 0
    DoEvents
Loop
    EstaCerrado = False
Else
    EnviarDatos
End If
End Sub


necesitas 2 winsock y un boton...

saludos.
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 20 Octubre 2008, 17:03 PM
Seba, de nuevo gracias por responder, mira e probado eso, e puesto todos los datos y todo, pero el problema es que ejecuto el programa, le doy al boton y ai se queda, no dice si ubo error, ni nada parecido, por lo que no se que podria ser, el firewall le da acceso a todo y los demas programas igual, asi que no se...
Título: Re: Subir txt por ftp
Publicado por: carolmuriel en 20 Octubre 2008, 17:13 PM
intenta satearlo a modo pasivo, la   conexion debe ser en modo pasivo, de lo contrario no funciona. como lo haces pues internet transfer control
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 20 Octubre 2008, 17:15 PM
Cita de: carolmuriel en 20 Octubre 2008, 17:13 PM
intenta satearlo a modo pasivo, la   conexion debe ser en modo pasivo, de lo contrario no funciona. como lo haces pues internet transfer control
No e entendido muy bien eso, ¿como lo podria hacer?
Título: Re: Subir txt por ftp
Publicado por: vivachapas en 20 Octubre 2008, 17:48 PM
yo tb lei algo de q tenia q ser en pasivo... pero no se como se hace eso con el Inet?
Título: Re: Subir txt por ftp
Publicado por: ssccaann43 © en 20 Octubre 2008, 20:06 PM
Como me encanta entrar en un post y ver el avatar de vivachapas. Deox... Men de donde sera esa chica...  :xD
Título: Re: Subir txt por ftp
Publicado por: vivachapas en 21 Octubre 2008, 02:50 AM
jaja xD alto avatar eh!
es de una chica de arg, corrientes... la filmaron (eso es solo una parte) el resto lo han eliminado de internet...
el asunto es q se saco fotos (eroticas) con la ropa del colegio, la escuela se entero se armo el escandalo... rastrearon los videos q andaban dando vuelta y los hicieron desaparecer... echaron a varios chicos q participaron de eso en la escula (aunque el hecho no sucedio ahi).. y a la chica la sansionaron pero no fue echada...

y bue... yo tb me enamore XDj jaja

en fin nadie sabe como hacer la conexion en pasivo.. o si a lo mejor el problema es del servidor FTP decirme uno con el q les haya funcionado.. :P

SALUDOS
Título: Re: Subir txt por ftp
Publicado por: carolmuriel en 21 Octubre 2008, 03:03 AM
spam??? bueno entrando al tema

cada socket tiene una canal de salida y otro de entrada, es decir, por donde se mandan los datos y por donde se reciben. Y además se puede especificar si va a ser una conexión activa o pasiva, y aquí es donde aparece lo de los famosos puertos abiertos. una conexión pasiva es la de cualquier servicio de internet, como puede ser un servidor web que escucha peticiones por el puerto 80 (generalmente), el puerto en sí no es relevante cualquier puerto permite cualquier tipo de tráfico y esa es mi explicacion

aqui en esta web hay mucha info sobre eso y lo digo por que antes de escribir una burrada estuve navegando por el foro hazlo tu igual para q veas
Título: Re: Subir txt por ftp
Publicado por: cobein en 21 Octubre 2008, 03:12 AM
Que raro vos por aca???
Título: Re: Subir txt por ftp
Publicado por: carolmuriel en 21 Octubre 2008, 03:13 AM
Cita de: cobein en 21 Octubre 2008, 03:12 AM
Que raro vos por aca???

que me estas corriendo si quieres me voy antes
Título: Re: Subir txt por ftp
Publicado por: cobein en 21 Octubre 2008, 03:16 AM
No por favor =)
Título: Re: Subir txt por ftp
Publicado por: carolmuriel en 21 Octubre 2008, 03:27 AM
Cita de: cobein en 21 Octubre 2008, 03:16 AM
No por favor =)

aqui te toca cuidarme q si me pasa algo por tu culpa sera xd xd un gusto verte
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 21 Octubre 2008, 08:02 AM
Pero como se aria eso?
Título: Re: Subir txt por ftp
Publicado por: ssccaann43 © en 21 Octubre 2008, 15:13 PM
Cita de: carolmuriel en 21 Octubre 2008, 03:27 AM
Cita de: cobein en 21 Octubre 2008, 03:16 AM
No por favor =)

aqui te toca cuidarme q si me pasa algo por tu culpa sera xd xd un gusto verte

Jaja che cobein, te toca cuidar a la chica... Hermano andas perdido... Un saludo
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 21 Octubre 2008, 15:17 PM
Alguien responde?
Título: Re: Subir txt por ftp
Publicado por: carolmuriel en 21 Octubre 2008, 15:19 PM
Cita de: eldiabloxico en 21 Octubre 2008, 08:02 AM
Pero como se aria eso?
chamin tu conexión sera pasiva siempre y cuando no le hallas cambiado en los socket, vale cualkier conexión es pasiva, hermano lea un pokito el foro dele en buscar en el home y escriba internet tranfer protocol hay mucha info
Título: Re: Subir txt por ftp
Publicado por: ssccaann43 © en 21 Octubre 2008, 15:21 PM
Cita de: eldiabloxico en 21 Octubre 2008, 15:17 PM
Alguien responde?

Hermano, ya te dimos muchas opciones e ideas... No haremos tu tarea...

Te dire dos cositas: USA GOOGLE
Título: Re: Subir txt por ftp
Publicado por: cobein en 21 Octubre 2008, 15:22 PM
Por que no bajas el codigo que te dije y  lo usas, no te custa nada y te ahorrarias varios problemas.
Título: Re: Subir txt por ftp
Publicado por: ssccaann43 © en 21 Octubre 2008, 15:24 PM
Aquí tenes ejemplos con Inet: http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/315-listar-archivos-con-inet.htm

A ver si aprendes a usar un buscador  :¬¬
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 21 Octubre 2008, 21:53 PM
Cita de: ssccaann43 en 21 Octubre 2008, 15:21 PM
Cita de: eldiabloxico en 21 Octubre 2008, 15:17 PM
Alguien responde?

Hermano, ya te dimos muchas opciones e ideas... No haremos tu tarea...

Te dire dos cositas: USA GOOGLE
No pido que lo hagais, e USADO GOOGLE, y nada, los metodos que e encontrado no me van... no soy un lammer si eso es lo que piensas...
Título: Re: Subir txt por ftp
Publicado por: vivachapas en 22 Octubre 2008, 21:27 PM
si es cierto xD yo tb ya probe banda de ejemplos y busque en google.. pero el problema sigue estando :S... estuve pensando q tal vez sea el servidor FTP, yo estoy usando GeoCities, no se si alguien pudo hacerlo con este...

SALUDOS
Título: Re: Subir txt por ftp
Publicado por: eldiabloxico en 22 Octubre 2008, 23:34 PM
No creo que sea por eso, ya que yo uso el de lycos, y no creo que 2 servidores distintos fallen, sera otra cosa.