Con el WSH tenemos acceso a casi todos las posibilidad de nuestro SO, abrir ventanas, seleccionar directorios con una ventana de diálogo, abrir programas, arrancar y parar servicios, crear cuentas de usuarios, etc, etc..., es decir, casi todo.
Crear estos scripts es sumamente sencillo. Basta con crear un archivo de texto, y guardarlo con la extensión VBS o JS (el primero en VisualBasic Script, y el segundo en JScript). Por ejemplo, el clásico "Hola Mundo", sería así:
WScript.Echo "Hola Mundo"
Obviamente esto no tiene mucho interés, a ver si esto interesa más:
Const MY_COMPUTER = &H11&
Const WINDOW_HANDLE = 0
Const OPTIONS = 0
Const MSG_INICIO = "Seleccione una carpeta: "
Set objShell = CreateObject("Shell.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objShell.Namespace(MY_COMPUTER)
Set objFolder = objShell.BrowseForFolder _
(WINDOW_HANDLE, MSG_INICIO, OPTIONS, strPath)
If objFolder Is Nothing Then
Wscript.Quit
End If
Set objFolderItem = objFolder.Self
objPath = objFolderItem.Path
Wscript.echo "Ha seleccionado: "+objPath
Lo que hace este script es mostrar el típico cuadro de diálogo de seleccionar carpeta y luego mostrarnos la ruta de la carpeta seleccionada.
Ni que decir tiene que se pueden crear scripts para parar y arrancar máquinas, servicios, borrar temporales, crear tareas programadas, o interactuar con Word, Excel, o cualquier otro programa del SO. Por ejemplo, yo lo he usado para crear un scripts que crea en disco una estructura de carpetas y automáticamente se sincroniza con un servidor de Subversion a través del TortoiseSVN.
Las posibilidades son casi infinitas y pidiendo ayuda al Scripting Guy, podemos ver un montón de ejemplos más con el código listo para usar.
