Como subir y bajar archivos en VBScript?

11/10/2004 - 11:47 por jheto | Informe spam
Lo unico con que pude entender que se hace esto es utilizando el Control
Internet Transfer, pero el codigo que acontinuacion agrego solo funciona en
Visual Basic para Aplicaciones y no en VBScript, lo que necesito es saber
como se suben o bajan los archivos en el cliente y servidor, si alguien sabe
otra forma me lo pueden decir.

Sub downloadImage
Dim bytes() As Byte
Set inet = CreateObject("InetCtls.Inet.1")
inet.RequestTimeout = (1000)
bytes() = inet.OpenURL "http://www.go.com/images/wallpaper.jpg,
icByteArray
open "wallpaper.jpg" for Binary Access write _ as #imgFile
put #imgFile, , bytes()
close #imgFile
set inet = Nothing
set bytes() = Nothing
End Sub

Muchas gracias, se los agradeceria mucho si me lo envian al email.

Atentamente: jheto <jheto@jcomp.tk>
 

Leer las respuestas

#1 Leonardo Azpurua
11/10/2004 - 19:43 | Informe spam
"jheto" escribió en el mensaje
news:
Lo unico con que pude entender que se hace esto es utilizando el Control
Internet Transfer, pero el codigo que acontinuacion agrego solo funciona


en
Visual Basic para Aplicaciones y no en VBScript, lo que necesito es saber
como se suben o bajan los archivos en el cliente y servidor, si alguien


sabe
otra forma me lo pueden decir.

Sub downloadImage
Dim bytes() As Byte
Set inet = CreateObject("InetCtls.Inet.1")
inet.RequestTimeout = (1000)
bytes() = inet.OpenURL "http://www.go.com/images/wallpaper.jpg,
icByteArray
open "wallpaper.jpg" for Binary Access write _ as #imgFile
put #imgFile, , bytes()
close #imgFile
set inet = Nothing
set bytes() = Nothing
End Sub



Hola, Jheto:

En VBScript no tienes instrucciones para el manejo de archivos. Lo que
necesites debes suministrarlo tu mediante DLLs.

Supongamos que tienes un proyecto (DLL ActiveX) llamado EscritorArchivos,
con una clase llamada CEscritor (Multi Instance) y el siguiente metodo:

Public Sub Escribir(sFileName, bytes)
Dim f as Integer
f = FreeFile
Open sFileName For Binary Access Write As #f
Put #f, , bytes
Close f
End Sub

generas tu DLL y ya esta listo el primer paso.

La segunda observación es que VBS no soporta tipos de variables. Todas las
variables son Variant.

De manera que debes reescribir tu script así:

Const IC_BYTE_ARRAY = <elValorCorrespondiente>
Sub downloadImage
Dim bytes
Set inet = CreateObject("InetCtls.Inet.1")
inet.RequestTimeout = (1000)
bytes = inet.OpenURL "http://www.go.com/images/wallpaper.jpg,
IC_BYTE_ARRAY
Set Escritor = CreateObject("EscritorArchivos.CEscritor")
Escritor.Escribir)"wallpaper.jpg", bytes)
Set Escritor = Nothing
set inet = Nothing
End Sub

NOTA: No esta probado, de manera que cuéntanos si funciona.

Salud!

Leonardo
mvp vb

Preguntas similares