Это пример кода VBScript, который показывает, как перехватить все, что программа командной строки отправляет на стандартный вывод.
Он выполняет команду xcopy /?
и отображает результат в окне сообщения. Перед появлением окна сообщения на долю секунды вы увидите всплывающее окно консоли.
Set objShell = WScript.CreateObject("WScript.Shell")
Set objExec = objShell.Exec("xcopy /?")
Do
line = objExec.StdOut.ReadLine()
s = s & line & vbcrlf
Loop While Not objExec.Stdout.atEndOfStream
WScript.Echo s
Вот другой пример кода VBScript, который показывает, как выполнить сценарий, не показывая окно консоли.
objShell.Run "c:\temp\mybatch.bat C:\WINDOWS\system32\cmd.exe", 0
или
objShell.Run "c:\temp\myscript.vbs C:\WINDOWS\system32\cscript.exe", 0
Как вы можете видеть, он имеет вид