Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Alguien sabe usar el Microsoft Internet Transfer Control para VB 6.0??

Estas en el tema de Alguien sabe usar el Microsoft Internet Transfer Control para VB 6.0?? en el foro de Visual Basic clásico en Foros del Web. Necesito transmitir un archivo por ftp, pero no me sale , porque no se la sintaxis de un metodo, les paso el codigo que tengo ...
  #1 (permalink)  
Antiguo 11/08/2006, 16:07
Avatar de @padawan@  
Fecha de Ingreso: julio-2005
Mensajes: 393
Antigüedad: 18 años, 9 meses
Puntos: 6
Alguien sabe usar el Microsoft Internet Transfer Control para VB 6.0??

Necesito transmitir un archivo por ftp, pero no me sale , porque no se la sintaxis de un metodo, les paso el codigo que tengo hasta la linea que no puedo seguir.


'Configuro los datos para conectarme al ftp de logon
ITC.Protocol = icFTP
ITC.URL = Server
ITC.username = User
ITC.Cancel

'asigna password y conecto
ITC.Password = password
ITC.RequestTimeout = 40
ITC.Execute , "DIR"
Do While ITC.StillExecuting
DoEvents: DoEvents: DoEvents
Loop

'Transmito el archivo
ITC.Execute , "PUT \\syner2000\inetpub\wwwroot\soloduenos2004\CanalCo untries\fotos\" & NombreFotoFTP

en esta ultima linea es en la que no se como seguir , no se bien como poner las cosas, como veran tengo la ruta exacta de donde tengo que sacar el archivo y el nombre tambien lo tengo , yo pense que era algo asi como poner la ruta origen y destino pero no es tan asi , espero que alguien me pueda ayudar con esto , me esta rompiendo la cabeza, saludos a todos.
  #2 (permalink)  
Antiguo 12/08/2006, 13:10
 
Fecha de Ingreso: agosto-2006
Mensajes: 10
Antigüedad: 17 años, 8 meses
Puntos: 0
En el MSDN te vienen ejemplos sobre el Internet Transfer Control. Te pego aquí un ejemplo sacado de la fuente citada:

Ejemplo del método Execute
Este ejemplo ilustra una serie de operaciones FTP comunes con el método Execute. En el ejemplo se supone que existen tres controles TextBox en el formulario. El primero, txtURL, contiene la dirección URL del servidor FTP. El segundo, txtRemotePath, contiene la información requerida por un comando determinado. El tercero, txtResponse, contiene la respuesta del servidor.

Private Sub cmdChangeDirectory_Click()
' Cambia al directorio txtRemotePath.
Inet1.Execute txtURL.Text, "CD " & _
txtRemotePath.Text
End Sub

Private Sub cmdDELETE_Click()
' Elimina el directorio indicado en txtRemotePath.
Inet1.Execute txtURL.Text, "DELETE " & _
txtRemotePath.Text
End Sub

Private Sub cmdDIR_Click()
Inet1.Execute txtURL.Text, "DIR BuscaEsto.txt"
End Sub

Private Sub cmdGET_Click()
Inet1.Execute txtURL.Text, _
"GET TomaEsto.txt C:\MisDocumentos\TengoEsto.txt"
End Sub

Private Sub cmdSEND_Click()
Inet1.Execute txtURL.Text, _
"SEND C:\MisDocumentos\Enviar.txt DocsEnviados\Enviado.txt"
End Sub

Private Sub Inet1_StateChanged(ByVal State As Integer)
' Obtiene la respuesta del servidor con el método
' GetChunk cuando State = 12.

Dim vtData As Variant ' Variable de datos.
Select Case State
' ... Otros casos no mostrados.
Case icError ' 11
' En caso de error, devuelve ResponseCode
' y ResponseInfo.
vtData = Inet1.ResponseCode & ":" & _
Inet1.ResponseInfo
Case icResponseCompleted ' 12
Dim vtData As Variant
Dim strData As String
Dim bDone As Boolean: bDone = False

' Obtiene el primer bloque.
vtData = Inet1.GetChunk(1024, icString)
DoEvents

Do While Not bDone
strData = strData & vtData
' Obtiene el siguiente bloque.
vtData = Inet1.GetChunk(1024, icString)
DoEvents

If Len(vtData) = 0 Then
bDone = True
End If
Loop
txtData.Text = strData
End Select

End Sub
  #3 (permalink)  
Antiguo 14/08/2006, 10:46
Avatar de @padawan@  
Fecha de Ingreso: julio-2005
Mensajes: 393
Antigüedad: 18 años, 9 meses
Puntos: 6
En esto que me pasastes , estan todos los ejemplos menos el del metodo PUT que es el que necesito usar para transmitir el archivo , me baje un ejemplo del sitio de microsoft, no me tira ningun error el codigo pero no me transmite el archivo , debe haber algo mal puesto o no se, no se,
  #4 (permalink)  
Antiguo 14/08/2006, 14:10
Avatar de @padawan@  
Fecha de Ingreso: julio-2005
Mensajes: 393
Antigüedad: 18 años, 9 meses
Puntos: 6
De acuerdo a la ayuda de MSDN y de material en internet , hice este codigo , pero no anda , se los paso a ver si me pueden decir en que estoy fallando ,

ITC.Protocol = icFTP
ITC.URL = server.text
ITC.username = user.text
ITC.Cancel

'asigna password y conecto
ITC.Password = pass.text
ITC.RequestTimeout = 40
ITC.Execute , "DIR"
Do While ITC.StillExecuting
DoEvents: DoEvents: DoEvents
Loop

ITC.Execute , "CD " & Chr(34) & ruta & Chr(34)
ITC.Execute , "PUT " & DirFile.Path & "\" & NombreFotoFTP & " " & NombreFotoFTP

MsgBox "Se conecto correctamente con el servidor ftp", vbExclamation, "Estado de la conexion FTP"


El error que me tira es el siguiente:
"Still executing last request"

espero sus consejos, saludos.
  #5 (permalink)  
Antiguo 21/01/2008, 18:06
 
Fecha de Ingreso: noviembre-2003
Ubicación: Guatemala
Mensajes: 8
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: Alguien sabe usar el Microsoft Internet Transfer Control para VB 6.0??

alguno de ustedes sabe como setear modo pasivo con esta herramienta???

tengo un codigo que se conecta a un FTP pero la conexion debe ser en modo pasivo, de lo contrario no funciona.


gracias,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:09.