Windows script host как запустить

Windows Script Host (WSH)

Знакомство с WSH

В этой статье пойдет разговор о возможностях Windows Script Host в Windows. Естественно, статья не способна заменить всю документацию, но мы попытаемся охватить основные моменты и дать несколько полезных и употребительных примеров.

Что такое Windows Script Host?

Для чего же все-таки нужен WSH? WSH позволяет работать с файловой системой, реестром, сетевыми соединениями (диски, принтеры), окружением и др. С помощью wsh-скриптов можно управлять запуском программ, посылать сигналы другим процессам, удаленно администрировать систему, работать с сетевым принтером, управлять входом в систему (login-скрипты) и многое другое. Скрипты для Windows Script Host могут быть не только отдельными программами, но и встраиваться в HTML-страницы, и использоваться в Active Server Pages (ASP), JScript, VBScript или PerlScript

Где взять Windows Script Host?

Windows Script Host (WSH) встроена в Microsoft Windows 98/Me/2000. Если вы до сих пор пользуетесь Windows 95,то можете загрузить Windows Script Host с сайта Microsoft. Кстати, последняя версия имеет номер 5.6, поэтому пользователи Windows 98/Me/2000 также могут обновить свою версию с 1.0 или 2.0 до текущей, имеющей дополнительные возможности.

Первые шаги по программированию WSH

Скрипт WSH является обычным текстовым файлом с расширениями .js, vbs и подключаются с помощью ActiveXObject в JS- и VBS-скриптах (в т.ч. в HTML). Кроме этого, WSH-скрипты могут содержаться в «своих» файлах — *.wsh и *.wsf (wsh-файлы — это скрипты для старых версий WSH). Эти файлы представляют собой специальные XML-конструкции. В одном файле можно использовать все доступные скриптовые языки.

Создадим первый учебный скрипт в обычном блокноте.

Запустите блокнот. Напечатайте следующий текст:

Сохраните файл с расширением .js (вместо .txt). Пусть это будет Hello.js.
Запустите Проводник и щелкните на созданном файле.
WSHost запустит движок JScript и исполнит наш скрипт.
В результате наших действий появится сообщение «Здравствуй, мир!»

Итак, у вас получилось! Но действительные возможности WSH гораздо шире. Вы можете создавать полноценные программы, имеющие очень маленькие размеры файлов. Для примера могу посоветовать скачать две программы (Настроить вид папки 1.0 и Сохранить выделенный текст 1.0) с сайта http://winchanger.narod.ru. Эти программы полностью написаны на WSH. Обратите внимание, что даже инсталяция этих программ сделана на WSH.

Объектная модель WSH

Для того, чтобы воспользоваться всеми возможностями, которые представляет эта технология, нужно хорошенько разобраться в ее структуре. Windows Script Host состоит из 14 объектов. Самым главным объектом является объект WScript.

Рассмотрим основные объекты и их возможности WScript

  • Устанавливает или получает аргументы командной строки.
  • Определяет имя скриптового файла.
  • Определяет имя хоста для скрипта (wscript.exe или cscript.exe)
  • Определяет версию хоста
  • Создает, соединяется или отсоединяется от объектов COM
  • Программно останавливает выполнение скрипта
  • Выводит сообщения

WshArguments Получает доступ к аргументам командной строки WshNamed Получает доступ к именованным аргументам командной строки WshUnnamed Получает доступ к безымянным аргументам командной строки WshNetwork Работа с сетью WshController Для работы со скриптами удаленного управления WshRemote Удаленные скрипты WshRemote Error Информация об ошибках (для WshRemote) WshShell Работа с оболочкой Windows WshShortcut Создание ярлыков WshSpecialfolders Пути к специальным папкам Windows WshURLShortcut Создание интернет-ссылок WshEnvironment Доступ к коллекции переменных окружения WshScriptExec Работа со скриптами

Читайте также:  Навител для windows настройка

Объект Wscript

Все объекты имеют свои свойства и методы. Не будем утомлять читателя перечислением всех свойств объектов. Приведем только свойства для Wscript

Свойство Описание
Arguments Возвращает указатель на список аргументов командной строки
FullName Возвращает имя исполняемого файла хоста и полный путь к нему (например, C:\Windows\wscript.exe)
Name Выводит замечательную надпись Windows Scripting Host
Path Определяет каталог и путь, содержащие wscript.exe или cscript.exe
ScriptFullName Возвращает полный путь и имя исполняемого в данный момент скрипта
ScriptName То же, что и ScriptFullName, но без пути
Version Возвращает версию установленного Windows Scripting Host
Приведем теперь пример с использованием VBScript

Листинг файла sample.vbs

Возможности WSH

Пора перейти к конкретным примерам, которые могут пробудить ваш интерес к WSH

Drag-and-Drop в WSH

Как уже говорилось выше, WSH имеет богатые возможности для работы с файлами, реестром и так далее. Кроме того, WSH поддерживает Drag’n’Drop. С помощью объекта WScript.Arguments в своем скрипте вы получаете имена файлов, с которыми вам надо работать. Сохраните файл dragndrop.vbs (листинг ниже) на диске, откройте Проводник и теперь просто перетащите любые файлы на ваш скрипт, который покажет их имена (пути к ним).

Листинг файла dragndrop.vbs

Создание ярлыков WSH

Также просто создавать ярлыки. Рассмотрим пример создания ярлыка к калькулятору и поместим его в Автозагрузку.

Листинг файла createshortcut.vbs

Специальные папки

Здесь необходимо сказать несколько слов о специальных папках. В предыдущем примере мы использовали одну такую папку Автозагрузка. Но дело в том, что в английской версии Windows аналогичная папка носит имя Startup, и если вы укажете точный путь вроде C:\WINDOWS\Главное меню\Программы\Автозагрузка, то это сработает в русской версии Windows и нигде больше. Чтобы избежать этих проблем Microsoft создала список специалных папок.Чтобы получить доступ к какой-либо специальной папке можно воспользоваться свойством SpecialFolders объекта WshShell.

Листинг файла specfol.js

Работа WSH с реестром

Еще больше возможностей для реализации ваших фантазий предоставляет работа с реестром. Для этого используется объект Wscript.Shell с его методами RegRead, RegWrite, RegDelete.

Приведу пример создания записи в реестре, позволяющий менять заголовок в Internet Explorer

Листинг файла ie_title.vbs

Запуск других приложений

Объект WshShell позволяет запускать другие приложения. В следующем примере мы запускаем две копии Блокнота — новый экземпляр и с содержимым нашего скрипта

Работа WSH с файлами

Также легко можно копировать, переносить и удалять файлы и папки. Не представляет сложности и работа с просмотром содержимого файла и его редактирования. Освоив данные возможности, вы получаете возможность работать с файлами autoexec.bat и config.sys, проверять значения параметров в win.ini, вести логи работы пользователей

Для этого надо инициализировать объект файловой системы FSO, а затем воспользоваться одним из его методов для открытия файла:

Листинг для файла open.vbs

Итак, OpenTextFile открывает файл, если его нет, то создается новый файл. Из параметров, передаваемых методу, обязательным является только первый — имя файла. Остальные параметры можно не указывать. Вторым параметром устанавливается режим открытия файла. Возможные значения следующие:

  • 1 — файл открывается только для чтения
  • 2 — файл открывается для записи. Причем, все содержимое файла, которое было до этого, уничтожится
  • 8 — файл открывается для добавления данных. Все, что вы запишите, будет добавлено в конец файла. Довольно удобно для ведения различных логов

Третья переменная может принимать значение true или false. Она показывает, создавать ли новый файл, если его до этого не существовало. Если значение равно true, то новый файл будет создан.

Вот мы с вами и рассмотрели наиболее используемые возможности WSH. Надеюсь, данная технология заинтересовала вас и вы самостоятельно продолжите изучение документации.

Скрипты сервера Windows Script Host (WSH)

В статье описаны скрипты WSH (Windows Script Host), способы их запуска, состав и функциональные возможности самого сервера Windows Script Host, и несколько примеров WSH скриптов. И так, давайте приступим. Все скрипты WSH являются интерпретируемыми, то есть, для их выполнения не требуется не требуется посредника, который будет преобразовывать ваш код в машинный. Вы просто открываете блокнот и пишите код сценария WSH. По умолчанию, Windows Script Host позволяет писать сценарии на двух языках, это VBScript и Jscript, но, при желании можно установить дополнительные модули для остальных языков, например, Perl, Phyton, TCL и так далее.

Читайте также:  Как сделать две ос linux windows

Теперь давайте рассмотрим, какие типы WSH сценариев можно создавать по умолчанию и их расширения:

.vbs – данный тип файлов содержит программный код на языке VBScript, если запустить такой скрипт, то сервер Windows Script Host автоматически применит для его обработки интерпретатор VBScript.
.vbe – в данном случае, это такой же файл как и vbs, но, закодированный.
.js — данный тип файлов содержит программный код на языке JScript, сервер автоматически будет его обрабатывать интерпретатором Jscript
.jse – закодированный сценарий WSH для языка Jscript.
.wsf – данный тип файлов содержит разметку XML и позволяет объединять вместе синтаксис различным языков.
.wsc – используется для регистрации вашего скрипта как COM-компонента (скриплет). Данный тип файлов требует отдельной статьи.
.wsh – управляет скриптом, аналог файла *.pif для DOS-программ. Будет рассмотрен в данной статье более подробно.

Хорошо, давайте рассмотрим, как запускать WSH скрипты. Для этого существуют два варианта:

cscript.exe – данная программа позволяет запускать сценарии wsh в консольном режиме, то есть, в окне командной строки.
wscript.exe – запуск сценариев wsh в графическом режиме. По умолчанию, при запуске, его обрабатывает именно wscript.exe.

Для простоты эксперимента, напишем два примера, один на языке VBScript, а второй на языке Jscript:

Тут мы используем лишь один объект WScript, объявлять который не надо, он автоматически доступен. Свойство Echo отвечает за вывод информации, остальные свойства (Name, FullName …) позволяют нам получить дополнительную информацию, знак & позволяет объединять строки, символ подчеркивания говорит, что мы разделили строку, константа vbCrlf отвечает за перевод каретки.

И вот аналогичный скрипт WSH, но уже на языке Jscript:

Тут мы объявили переменную Mess, в которую прописали несколько строк, плюсик отвечает за объединение строк, а \n – за перевод строки. Для полноты понимания, советую, вам все-таки познакомиться с основами VBScript и Jscript и с остальными статьями из этой рубрики.

Хорошо, теперь стоит уточнить один момент, по умолчанию, если вы сохраните данные сценарии wsh и запустите их с помощью щелчка мыши, то их обработает программа wscipt.exe, однако есть одно но. После установки различных программ или каких-то изменений в системе, сценарии wsh будут обрабатываться совсем другой программой (блокнот, например). Просто надо отрыть свойства файла (скрипта), и изменить приложение для их обработки на wscript.exe (папка Windows\System32).

Теперь давайте рассмотрим способы запуска скриптов wsh.

Консольный режим в командной строке – просто откройте командную строку и пропишите:

cscript.exe “путь к сценарию wsh”

Кавычки нужны лишь в том случае, если путь содержит пробелы, пример:

cscript.exe D:\work\info.vbs
cscript.exe D:\work\info.js

Графический режим в командной строке – просто откройте командную строку и пропишите:

wscript.exe “путь к сценарию”

wscript.exe D:\work\info.vbs
wscript.exe D:\work\info.js

Используя меню Пуск – Откройте меню пуск, и в поле Выполнить введите путь к сценарию wsh. Например:

D:\work\info.vbs
D:\work\info.js

Хорошо, теперь настало время настройки параметров запуска

Параметры cscript.exe — если вы войдете в командную строку и пропишите cscript.exe, то вам будет показан список параметров запуска сценариев wsh. Все параметры начинаются с символов //. Встроенной справки хватит, что бы во всем разобраться. Так, параметр //Job используется при вызове заданного задания для файлов wsf, пример я привел в статье “Знакомство с ws-файлами (windows script file)”.

Читайте также:  Ide delphi для linux

Параметры wscript.exe — тут все намного проще. Просто кликните по вашему wsh скрипту правой кнопкой, выберите пункт свойства и перейдите на вкладку Сценарий. Тут можно задать время, через которое произойдет остановка сценария. После того, как вы зададите значение в секундах и нажмете кнопку применить, появится файл с аналогичным названием, но с расширением wsh. Если теперь запустить этот скрипт, то произойдет выполнение сценария с заданными настройками, но, как вы уже догадались, тут есть один подводный камень. У нас сейчас два файла с одинаковыми именами (info), но с разными расширениями, для какого бы скрипты мы не применяли настройки, все ровно будет создан лишь один info.wsh. Ладно, на этом пока все, комментируйте и подписывайтесь.

Спасибо за внимание. Автор блога Владимир Баталий

Ошибка Windows Script Host при запуске Windows 10

Windows Script Host предоставляет такие возможности сценариев, как пакетные файлы, но включает в себя множество других функций. Он может использоваться пользователем вручную, а также создаваться операционной системой для автоматизации потока операций на компьютере. Есть много связанных ошибок, которые могут иметь следующий вид:

Сценарий: Не удается найти файл сценария.
«Путь сценария VBS»
Строка: х
Символ: x
Ошибка: описание ошибки.
Код: ххххххх
Источник: источник ошибки.

Windows Script Host — Не удается найти файл сценария в Windows 10

Если вы включили создание точки восстановление системы , то можете просто откатить систему на пару дней назад, когда она работала стабильно. Помните, что работа, которая была сделана сегодня, не восстановится, если вы откатили задним числом.

1. Используйте проверку системных файлов

Запустите командную строку от имени администратора и выполните следующую команду для сканирования и автоматического восстановления системных файлов:

Перезагрузите систему после завершения сканирования.

2. Сканирование ПК на наличие вредоносных программ

Одна из причин, почему пользователи получают ошибку Windows Script Host — это вредоносные программ скаченные с ненадежных источников. Если ваш компьютер заражен вредоносным ПО, может появиться сообщение об ошибке «Не удается найти файл сценария«. Если у вас стоит сторонний антивирус , то запустите его в режиме «полная проверка». Рекомендую воспользоваться антивирусным сканером .

Наверное многие уже пользуются встроенным антивирусом защитником Windows. Запустите его на проверку в автономном режиме, и он при перезагрузке будет проверять уязвимые места на вирусы.

3. Установить значение по умолчанию для ключа .vbs

Нажмите комбинацию кнопок Win + R и введите regedit, чтобы открыть редактор реестра. Далее перейдите по пути:

  • HKEY_CLASSES_ROOT\.vbs

В левой колонке найдите .vbs, выделите эту папку, и с правой стороны щелкните два раза мышкой по значению (По умолчанию). Задайте значение VBSFile.

4. Устранение неполадок в состоянии чистой загрузки

Чистая загрузка используется для диагностики и устранения неполадок связанных с системой. Во время чистой загрузки мы запускаем систему с минимальным количеством драйверов и программ запуска, что помогает изолировать причину мешающим программным обеспечением. После того, как вы загрузились в чистом состоянии загрузки, проверьте, сохраняется ли проблема. Если, ошибки нет, то вам придется искать программу или службу, которая вызывает ошибку Windows Script Host. Таким образом вы можете добавлять другие (сторонние) службы по одной, чтобы выявить виновника.

5. Восстановление или сброс Windows 10

Восстановление: Загрузитесь в дополнительные параметры и попробуйте «Восстановление при загрузке». Чтобы попасть туда, нужно перезагрузить компьютер 3 и более раз кнопкой Reset на ПК. Т.е. Вы загружаетесь до момента логотипа Windows (когда крутится колесико загрузки) и перезагружаете еще раз. И так три раза.

Сброс: Вы можете попробовать сбросить ваш ПК до значения по умолчанию, сохранив при этом свои файлы.

Оцените статью