Sumario:
Este artículo muestra dos ejemplos de como se usa el control internet transfer control que esta incluido en Microsoft Office Developer Edition 97.
Mas información:
Con el internet transfer control tu puedes acceder a internet y a la world wid web usando los dos protocolos mas comunes: Hiper text transfer control (protocolo de transferencia de hipertexto HTTP). Y el protocolo filer transfer protocol (protocolo de transferencia de ficheros FTP). Cuando tu usas Inet con http tu puedes obtener documentos http de una internet o intranet y cuando lo usas con ftp tu puedes enviar y recibir ficheros de un sitio ftp. El control soporta los mas comunes comandos en el lenguaje ftp como GET, DIR, DELETE y CD. Aunque si tu creas un cliente ftp desde el control winsock son comandos diferentes.
Ejemplo 1: Usando el evento openurl para obtener una página html.
El siguiente ejemplo descarga la web principal de microsoft al disco duro.
Aqui vendrían las instrucciones de como añadirle en el formulario el control pero me las salto por ser un poco fáciles
Necesitamos los siguientes controles:
Citar
Nombre formulario: frmOpenURL
--------------------------
Caption: OpenURL Form
Boton:
Name: cmdWriteFile
Caption: Write to Disk
Otro boton:
Nombre: cmdGetHeader
Caption: Get Header
En un modulo de clase pondemos:--------------------------
Caption: OpenURL Form
Boton:
Name: cmdWriteFile
Caption: Write to Disk
Otro boton:
Nombre: cmdGetHeader
Caption: Get Header
Código:
Dim objInet as Inet
Y luego en form ponemos el código:Código:
Private Sub Form_Load()
' Ponemos la referencia del objeto inet
Set objInet = Me!axInetTran.Object
End Sub
Private Sub cmdWriteFile_Click()
Dim b() as Byte
' Ponemos el procolo y la url
objInet.Protocol = icHTTP
objInet.URL = "HTTP://www.microsoft.com"
' Recibimos los datos
b() = objInet.OpenURL(objInet.URL,icByteArray)
' Creamos un archivo local para recibir los datos
Open "C:\Homepage.htm" For Binary Access Write As #1
Put #1, , b()
Close #1
MsgBox "Done"
End Sub
Private Sub cmdGetHeader_Click()
' Ponemos el protocolo y la web
objInet.Protocol = icHTTP
objInet.URL = "HTTP://www.microsoft.com"
' Abrimos el archivo html y ponemos la informacion
objInet.openURL objInet.URL, icByteArray
MsgBox objInet.GetHeader
End Sub
Ejemplo 2 que muestra como recibir ficheros por ftp.' Ponemos la referencia del objeto inet
Set objInet = Me!axInetTran.Object
End Sub
Private Sub cmdWriteFile_Click()
Dim b() as Byte
' Ponemos el procolo y la url
objInet.Protocol = icHTTP
objInet.URL = "HTTP://www.microsoft.com"
' Recibimos los datos
b() = objInet.OpenURL(objInet.URL,icByteArray)
' Creamos un archivo local para recibir los datos
Open "C:\Homepage.htm" For Binary Access Write As #1
Put #1, , b()
Close #1
MsgBox "Done"
End Sub
Private Sub cmdGetHeader_Click()
' Ponemos el protocolo y la web
objInet.Protocol = icHTTP
objInet.URL = "HTTP://www.microsoft.com"
' Abrimos el archivo html y ponemos la informacion
objInet.openURL objInet.URL, icByteArray
MsgBox objInet.GetHeader
End Sub
El siguiente ejemplo usa el control inet con ftp y descarga de microsoft un fichero que se llama: Dirmap.txt.
Nota: El control Inet no trabaja con algunos servidores proxy. Si tu no tienes una conexión directa a internet con un ISP, verifica que tu servidor proxy puede soportar conexiones ftp.
Primero en este ejemplo vamos a usar:
Citar
Nombre del formulario: frmRetrieveFile
--------------------------
Caption: Retrieve FTP File
Botón:
Nombre: cmdGetFile
Caption: Get FTP File
Caja de texto:
Nombre: txtFTPSite
Caja de texto:
Nombre: txtFileName
En un módulo de clase ponemos:--------------------------
Caption: Retrieve FTP File
Botón:
Nombre: cmdGetFile
Caption: Get FTP File
Caja de texto:
Nombre: txtFTPSite
Caja de texto:
Nombre: txtFileName
Código:
Dim objFTP as Inet
Y en un formulario ponemos el código que nos permite hacer esto:Código:
Private Sub Form_Load()
' Ponemos la referencia del control
Set objFTP = Me!axFTP.Object
End Sub
Private Sub cmdGetFile_Click()
'Definimos las variables
Dim strSite As String
Dim strFile As String
strSite = Me!txtFTPSite
strFile = Me!txtFileName
objFTP.Protocol = icFTP
objFTP.URL = strSite
objFTP.Execute strSite, "Get " & strFile & " C:\" & strFile
End Sub
Private Sub axFTP_StateChanged(ByVal State As Integer)
' Ponemos un mensjae cuando el fichero se termina de transferir
If State = 12 Then Msgbox "File Transferred"
End Sub
Aplicable a:' Ponemos la referencia del control
Set objFTP = Me!axFTP.Object
End Sub
Private Sub cmdGetFile_Click()
'Definimos las variables
Dim strSite As String
Dim strFile As String
strSite = Me!txtFTPSite
strFile = Me!txtFileName
objFTP.Protocol = icFTP
objFTP.URL = strSite
objFTP.Execute strSite, "Get " & strFile & " C:\" & strFile
End Sub
Private Sub axFTP_StateChanged(ByVal State As Integer)
' Ponemos un mensjae cuando el fichero se termina de transferir
If State = 12 Then Msgbox "File Transferred"
End Sub
Microsoft acces 97
Microfot visual basic 6.0
Fuente:
La fuente es: http://support.microsoft.com/default.aspx?scid=kb;EN-US;q163653
por si se desea verlo mas completo. Yo me he limietado a copiar las partes mas interesantes y a traducirlo.