WSH - Windows Scripting Host - todo o poder do script


Windows Scripting Host ou simplesmente WSH é a linguagem de script do sistema operacional Windows.

E para que serve uma linguagem de scripts ? Ora , para automatizar tarefas.

Você pode criar os arquivos de scripts usando qualquer editor de texto . (Bloco de notas inclusive...)

Após você criar o script basta salvar o arquivo como um arquivo texto com extensão .VBS ou .JS.

A extensão do nome do arquivo indica para o sistema operacional qual o mecanismo de script será invocado para interpretar e executar o script. Indica também qual a linguagem será esperada no arquivo. Se você usar VBScript a extensão deverá ser .VBS se usou o JavaScript a extensão será .JS.

Para executar o arquivo de script basta clicar sobre o mesmo duas vezes , fazendo isto o host padrão que vem associado com os arquivos de scripts será invocado para executar o arquivo. A aplicação WSCRIPT.EXE é o padrão para o WIndows e usa janelas gráficas. (Você pode também executar o arquivo digitando o comando WSCRIPT.EXE <nome_do_arquivo_de_script> )

Você pode alterar este host padrão para CSCRIPT.EXE para poder escrever arquivos de lote .BAT (como os usados no MS-DOS) sem recursos gráficos. Para executar o arquivo usando este host basta digitar : CSCRIPT.EXE <nome_do_arquivo_de_lote>.

Nota: Se você quiser tornar o host CSCRIPT.EXE padrão execute o comando: CSCRIPT //H:CSCript.exe //S

A execução de uma arquivo de script é feita linha a linha de forma seqüêncial. Tenha isto em mente.

Para fazer um pequeno teste abra o bloco de notas e digite a seguinte linha de código no seu primeiro arquivo de script:

A seguir salve o arquivo com o nome de teste.vbs e para executar clique no botão Iniciar e em Executar e a seguir digite:

 
O comando para executar o script - O resultado do script

Imagine o poder que você tem nas mãos !!!

Antes de ficar empolgado já vou adiantar que se você pretende usar VBSCript nos seus scripts a implementação não foi feita de forma completa. Assim você não vai poder usar : GOSUB , WITH, On Error ... nem GOTO. Também não há recursos para usar DDE nem Clipboard.

Apesar disto você tem as funcionalidades especificas do WSH acessadas através do objeto WScript.(este é o objeto primário intrínseco)

O objeto WScript fornece os principais métodos/propriedades que podemos usar em nossos scripts. Exemplos:

- método CreateObject - usado para criar instâncias de outros objetos

- propriedade Arguments - usado para obter os parâmetros passados pela linha de comando.

- propriedade Echo - ecoa os comandos exibindo o texto na janela.

Vejamos um código de um arquivo de script usando este objeto.

Outro exemplo mais interessante é mostrado no arquivo espaco_hd.vbs abaixo:

Executando o arquivo com : WSCript.exe espaco_hd.vbs iremos obter:

Perceba que temos acesso a uma hierarquia de objetos baseados no objeto FileSystemObject que usamos para calcular o espaço livre do HD.Note que para poder usar o FileSystemObject tivemos que criar um método e instanciá-lo em :
set HD = WSCript.CreateObject("Scripting.FileSystemObject")

Após instanciar o objeto temos acesso as suas propriedades.

Esta achando pouco ? Quer mais ??? Veja o exemplo de script a seguir para abrir o Microsoft Word (arquivo abre_word.vbs):

Abre o WinWord na sua máquina

O exemplo abaixo - arquivo cria_dir.vbs - cria o diretório mmacoratti_wsh no drive D: e muda a localização para este diretório.

Cria diretório e muda para diretório criado

Para encerrar a bateria de exemplos o script a seguir demonstra como usar as variáveis de ambiente e exibir informações em caixas de mensagens:

Além destas tarefas você pode ainda acessar banco de dados , fazer atualizações de versões de seus aplicativos, e muito mais...

Aguarde mais artigos sobre WSH.

Como referência básica podemos indicar:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/wsconWSHBasics.asp


José Carlos Macoratti