2015-02-08 2 views
0

Я пытаюсь вызвать vbscript, используя приведенный ниже скрипт.call vbsript from .bat или cmd

Почти все работает нормально, но кажется, что он игнорирует линию WScript "%~dp0\close.vbs"

close.vbs скрипт закрывает диалоговое окно, в некоторых приложениях не знает, как это сделать в ЦМДЕ.

пакетного сценария

FOR %%f IN (*.obj) DO (
    start "C:\Program Files\VCG\MeshLab\meshlab.exe" %%f 
    WScript "%~dp0\close.vbs" 
    nircmd.exe cmdwait 3000 savescreenshot "%%~nf_OBJ.png" 
    taskkill /F /IM meshlab.exe 
) 

close.vbs

Set oShell = CreateObject("WScript.Shell") 
oShell.AppActivate("Opening Problems") 
WScript.Sleep 500 
oShell.SendKeys "~" 
+1

В чем проблема? –

+0

Привет, спасибо за быстрый комментарий. Я использую приведенный выше код с использованием .bat. но его не работает "\t WScript"% ~ dp0 \ close.vbs "" –

+0

Вы должны обновить вопрос. Это не работает, этого недостаточно! Опишите, в чем проблема. Например. Он не может найти сценарий, нет вывода и т. Д. –

ответ

1

Это был вопрос времени. Добавление WScript.Sleep 2000 в vbs script сделал работу:

WScript.Sleep 2000 
Set oShell = CreateObject("WScript.Shell") 
oShell.AppActivate("Opening Problems") 
oShell.SendKeys "~" 
+0

Привет, можно добавить эти четыре строки непосредственно в Batch Script. вместо того, чтобы называть его? –