É possível criar um VBScript que execute um script em lote?

1

Eu sei que soa estranho, mas minha ideia é criar um único arquivo de texto que contenha um VBScript e um Batch Script dentro dele, ou seja, se eu executar esse script como um VBScript, ele se chama como um script Batch e esse lote script fazer algumas tarefas cmd.exe.

Eu sei que você pode usar o método .ShellExecute e depois rodar várias vírgulas usando [...] CMD / C, mas isso é um pouco difícil de ler.

Minha tentativa foi:

If False Then
  goto batchLines
End If
[...VBScript continues here...]
Wscript.Quit
:batchLines
[...batch Script starts here...]

Mas como visto, não funcionou de todo.

    
por Pablo 08.07.2015 / 23:53

1 resposta

0

O oposto é possível (fazer um lote que execute o script VB) este é um exemplo.

@set @junk=1 /*
@echo off
REM Add Batch Stuff Here
if "%1" == "MOARBATCH" goto :MOARBATCH
cscript //nologo //E:jscript %~f0 %*
goto :eof */
// Add VBS stuff here
Wscript.Quit
/*
:MOARBATCH
REM More Batch Stuff Here
REM */

Você pode enlouquecer com isso, mas AFAIK você precisa começar com um arquivo de lote, a fim de tirar proveito do Arquivo do lote que segura as peculiaridades que isto usa. BTW, isso geralmente é chamado de arquivo em lote híbrido.

    
por 09.07.2015 / 00:17