[Solucionado] [VBS] Duda sobre los argumentos

Iniciado por SuperDraco, 23 Enero 2011, 12:39 PM

0 Miembros y 1 Visitante están viendo este tema.

Novlucker

Si podría agregar eso pero no tiene gracia, te lo pongo desde el ms-dos para que lo entiendas mejor :xD
Código (dos) [Seleccionar]
E:\vbs>echo wscript.echo wscript.arguments.count > Mensaje.vbs
E:\vbs>echo wscript.echo wscript.arguments(0) >> Mensaje.vbs
E:\vbs>type Mensaje.vbs
wscript.echo wscript.arguments.count
wscript.echo wscript.arguments(0)

E:\vbs>cscript/nologo Mensaje.vbs "Soy un argumento!"
1
Soy un argumento!

E:\vbs>echo wscript.echo wscript.arguments(1) >> Mensaje.vbs
E:\vbs>type Mensaje.vbs
wscript.echo wscript.arguments.count
wscript.echo wscript.arguments(0)
wscript.echo wscript.arguments(1)

E:\vbs>cscript/nologo Mensaje.vbs "Soy el primer argumento" "y yo el segundo"
2
Soy el primer argumento
y yo el segundo

E:\vbs>

Lo que intentaba decirte con esto era que directamente hicieras todo con vbs :P
El code que has dejado en tus primeros mensajes solo necesita ligeros arreglos

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

SuperDraco

#11
Antes no entendia lo que era un argumento, ahora que ya lo entiendo no se aplicarlos en vbs  :xD

A ver si ya puedo resolver este problema de una vez, tengo mi script así:

Código (DOS) [Seleccionar]
Set objshell = createobject("wscript.shell")
wscript.arguments.count
wscript.arguments(0)
wscript.arguments(1)
Set prueba = objshell.run("cmd /k (1) -h & pause")
WScript.Quit



("cmd /k (1) -h & pause")

El (1) ha sido mi intento para aplicar elargumento 1, pero no se hacerlo...


A lo que me refiero es que para indicar un argumento en batch basta con poner en el script  %1 asi llamas al argumento 1, pero en VBS como se hace eso?
No he vuelto, solo estoy de paso.

SuperDraco

#12
con este script por fin me oculta los archivos, pero está mal, porque me oculta toda la carpeta si abro el vbs, debería ocultarme solo ese archivo, el vbs...


Set objshell = createobject("wscript.shell")
wscript.arguments.count
Set objArgs = WScript.Arguments
for each file in objArgs
objshell.run("cmd /k attrib +h & pause")
next
WScript.Quit


Osea, ese script lo guardo en "c:\1.vbs"
pero al abrir el archivo, todos los archivos de C:\ se ocultan...
No he vuelto, solo estoy de paso.

Novlucker

Quería que aprendieses algo, pero como no hay remedio :-\
Código (vb) [Seleccionar]
Set objfso = Createobject("scripting.filesystemobject")
Set oFile = objfso.getfile(wscript.arguments(0))
oFile.attributes = 2


Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

SuperDraco

#14
Cita de: Novlucker en  1 Abril 2011, 13:15 PM
Quería que aprendieses algo, pero como no hay remedio :-\
Código (vb) [Seleccionar]
Set objfso = Createobject("scripting.filesystemobject")
Set oFile = objfso.getfile(wscript.arguments(0))
oFile.attributes = 2


Saludos

Aprendo más fijandome en tus scripts que intentando chorradas por mi mismo xDD
Eso si, muy poco a poco  :P

Funciona perfecto! y encima sin llamar a la consola (Lo del ofile.attributes lo conocia pero no sabía aplicarlo tampoco...), me gusta me gusta, que haría yo sin ti jajaja

gracias nov



EDITO: iba a preguntarte otra cosa pero ya lo he encontrado :)

para las carpetas es:
Set oFile = objfso.getfolder(wscript.arguments(0))
No he vuelto, solo estoy de paso.