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>

Preguntas similare

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
Respuesta Responder a este mensaje
#2 jheto
12/10/2004 - 10:33 | Informe spam
Leonardo Azpurua <l e o n a r d o (arroba) m v p s (punto) o r g> escribió
en el mensaje de noticias #

"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





no netngo idea de que tengo que escribir en <elValorCorrespondiente> y otra
pregunta, es pusible instalar un ActiveX sin interaccion del usuario.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida