При запуске скрипта или какой-либо консольной утилиты у нас возникает окно терминала. Иногда это может привести к выходу на рабочий стол из полноэкранного приложения.
Да и вообще, вы можете поставить в Планировщик заданий скрипт, который должен выполняться в фоне, но будете периодически видеть это окно на доли секунды.
Это неудобно.
Решение этой проблемы очень простое – это VBS-скрипт для запуска чего либо.
Именно параметр 0 в строке WShell.Run скрывает наше окно со скриптом.
При отладке вы можете его просто убрать или сменить на нужный режим по ссылке.
WScript.Echo Args
вероятно также будет полезно при отладке.
Сохраняем код как .vbs файл и задаём свой путь в Set Script
, а запуск обычный:
Так же наш vbs скрипт принимает аргументы, которые потом будут переданы вызываемому bat-файлу/скрипту/утилите:
В принципе можно пойти дальше и сделать универсальный runner:
Соответственно всё, что вы будете передавать как аргументы при вызове vbs скрипта будет пытаться выполниться.
Возможен вариант, когда аргумент содержит пробелы, тогда его нужно взять в одинарные кавычки.
Конечно можно найти и готовые утилиты для скрытого запуска, например: NirCmd, cmdow, ..
Решение VBS-скриптом одно из, но оно просто и прозрачное.
You can follow any responses to this entry through the RSS 2.0 feed.
Leave a reply