epelpad

Siempre quisiste hacer un VBS? (parte 1)

Esto va a dar para largo, asi que mejor lo voy partiendo en partes para que vayamos familiarizando el proceso.

Pregunta:

Que es un vbs?

Un vbs es una extension de archivo que ejecutar comandos escritos desde un notepad, en forma automatica.

Por ejemplo: en un vbs, podes configurar el inicio de determinados programas e incluso loggueos de cuentas en paginas al mejor estilo "hotmail" o porque no "taringa!" sin la necesidad de escribir nada, simplemente necesitamos de un dobleclick.

(para muchos la aclaración podra resultar de mas, pero no todos saben).

Vamos con lo basico (perdon la carencia de imagenes pero a) serian demasiado estupidas b) estoy en el trabajo)

abran un notepad.

Les dejo algo como para que empecemos con la creación simple del VBS.

Set Loquequieran = CreateObject ("WScript.Shell"

(el "loquequieran" lo reemplazan, digamos que es una "variable" que es lo que ejecutará todos los procesos que hagamos)

Para los que esten familiarizados con el VB, pero asi no con VBS, notarán que en este caso, estamos usando el Comando SHELL de VB, por lo que, a continuación, procederemos a llamar distintas aplicaciones.

Para los que no estan familiarizados, simplemente, sepan que el objeto WScript.Shell es el que nos va a permitir abrir aplicaciones.

Loquequieran.run "http://www.taringa.net/" *este comando utilizará el browser por default de la pc para abrir "taringa!"

Loquequieran.run "ruta+aplicación" abrirá cualquier aplicación, ciertas aplicaciones predeterminadas de windows no requieren de una ruta, por ejemplo:

Loquequieran.run "notepad" *abrirá el notepad sin mas requerimientos

Cabe aclarar, que los VBS unicamente pueden ejecutar extensiones .exe, por lo tanto, no pueden llamar absolutamente cualquier archivo.

Otras cosas que serían de utilidad para que empiecen a practicar un poco:

WScript.Sleep xxxxxx *las x son reemplazadas por numeros, este valor, es el tiempo que le pedimos al vbs que espere antes de continuar con el siguiente comando (el tiempo esta en MILI segundos, o sea 1000 seria 1 segundo de espera.

WScript.Sendkeys *una de las utilidades mas divertidas del vbs, es la capacidad de enviar teclas como si fueran tipeadas por uno mismo, esto lo hacemos con el comando que recien mencione, para dejarles un ejemplo.

Wscript.Sendkeys "esto lo saque de Taringa" (hay caracteres especiales, que los detallaremos mas abajo)

Vamos a unir todas las piezas para dar un ejemplo perfectamente funcional a un primer VBS.

Set Loquequieran = CreateObject ("WScript.Shell"
Loquequieran.run "notepad"
WScript.Sleep 4000
Wscript.Sendkeys "mi primer vbs"

Con esto sacamos algo simple, como abrir el notepad, esperar 4 segundos (hasta que el programa esté abierto), y luego que tipee "mi primer vbs" (sin las comillas).

Otra cosa con la que podemos jugar con este objeto (el shell), es el llamado de distintas aplicaciones, que ya estan abiertas.

El mismo lo logramos con el comando:

Loquequieran.appactive "xx" (las X deberían reemplazarlas por el nombre de la ventana de la aplicación.

Por ejemplo, en este preciso momento, en mi browser, aparece el nombre de ventana "Taringa! - Inteligencia Colectiva - Mozilla FireFox", si quisiera traer esta ventana a "foco" (para trabajarla), deberia ser:

Loquequieran.appactive "Taringa! - Inteligencia Colectiva - Mozilla FireFox", se puede abreviar a las primeras palabras, por ej:
Loquequieran.appactive "Taringa!"

El problema con esto puede suceder, si tenemos varias ventanas con nombres similares (o mejor dicho, con la primera parte del nombre igual) ya que el vbs, recurrirá a enfocarse en una de esas ventanas AL AZAR, por ende, mientas mas completo el nombre, mas certeza que es la ventana con la que queremos interactuar.

OJO con las mayúsculas y los acentos, todo tiene que ser respetado tal cual ya que sino, no va a ponerse en foco en la aplicación que le pedimos.

Aca les dejo los caracteres (o teclas) especiales de los vbs.

RETROCESO {BACKSPACE}, {BS} o {BKSP}
INTERRUMPIR {BREAK}
BLOQ MAYÚS {CAPSLOCK}
SUPR o SUPRIMIR {DELETE} o {DEL}
FLECHA ABAJO {DOWN}
FIN {END}
ENTRAR {ENTER} o ~
ESC {ESC}
AYUDA {HELP}
INICIO {HOME}
INS o INSERTAR {INSERT} o {INS}
FLECHA IZQUIERDA {LEFT}
BLOQ NUM {NUMLOCK}
AV PÁG {PGDN}
RE PÁG {PGUP}
IMPRIMIR PANTALLA {PRTSC}
FLECHA DERECHA {RIGHT}
BLOQ DESPL {SCROLLLOCK}
TAB {TAB}
FLECHA ARRIBA {UP}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
F11 {F11}
F12 {F12}
F13 {F13}
F14 {F14}
F15 {F15}
F16 {F16}
MAYÚSCULAS +
CTRL ^
ALT %

Arranquemos con esto, y despues iremos indagando un poco mas sobre las cualidades de los VBS, pero es algo interesante para empezar a jugar un poco.

Y para los mas viejos, un poco de nostalgia con un epico saludo.

"buenoooo, esto fue el Visual Basic Script, espero que les haya gustado"

(GRANDE NIVEL X!!!!!)

6 comentarios - Siempre quisiste hacer un VBS? (parte 1)

vrodmz
Creo que te faltaron algunos parentesis, pero bueno... interesante!!!
Heroe99_Kevin
sigo sin entender qe puta hago con el loqeqiera u_u
javi_mad
me sirve un poco para mi proyecto del antivirus con el vbs...
+10...
bonedicot
Oye El Shell es como iniciar una libreria en C++?