Вопрос или проблема
Я запускаю файл VBScript (.vbs) с помощью планировщика заданий Windows.
На компьютере с Windows XP SP3 x86 командное окно не отображается во время выполнения задания.
На компьютере с Windows Server 2003 R2 SP2 x64 командное окно отображается во время выполнения задания.
Кто-нибудь знает, почему различается поведение, и, в частности, как я могу скрыть командное окно на сервере?
Полная версия – Microsoft Windows Server 2003 R2 Enterprise Edition x64 (5.2.3790).
Командное окно отображается, вероятно, потому что оно запускается через cscript. Командное окно будет отображаться, если пользователь, от имени которого настроено выполнение задания, вошел в систему в момент его выполнения.
Измените ваше запланированное задание, чтобы запускать его через WScript, подобно этому:
wscript //b //nologo <имя_скрипта>
Ответ или решение
Чтобы скрыть окно командной строки при выполнении VBScript как запланированное задание на Windows Server 2003 R2 SP2 x64, выполните следующие шаги:
-
Обратите внимание на метод исполнения: Убедитесь, что вы используете
WScript
вместоCScript
для запуска вашего VBScript.CScript
открывает командное окно, в то время какWScript
работает в фоновом режиме и не отображает интерфейс. -
Измените задание в планировщике задач:
- Откройте "Планировщик задач" (Scheduled Tasks) через меню "Пуск".
- Найдите ваше задание и щелкните правой кнопкой мыши, выберите "Свойства".
- В разделе "Общее" (General) установите галочку на "Выполнять, когда пользователь не вошел в систему" (Run whether user is logged on or not).
- После этого в поле "Команда" замените команду для запуска скрипта с
CScript
наWScript
. Введите следующее:wscript //b //nologo "C:\путь\к\вашему_скрипту.vbs"
- Опциональные параметры
//b
(безэкранный режим) и//nologo
(без логотипа) помогут устранить лишнюю информацию.
-
Проверьте разрешения: Убедитесь, что у учетной записи, под которой выполняется задание, есть необходимые разрешения для доступа к файлу скрипта и другим ресурсам, которые он может использовать.
-
Тестирование: Запустите запланированное задание вручную, чтобы убедиться, что окно командной строки не отображается и скрипт выполняется корректно.
Следуя этим шагам, вы сможете успешно скрыть окно командной строки при выполнении вашего VBScript на Windows Server 2003 R2.