Сервис сценариев windows

👍 Операционная система Windows известна своими необычными и часто непонятными ошибками.

Операционная система Windows известна своими необычными и часто непонятными ошибками. Например, о чем пользователю может сказать ошибка «На данном компьютере отключен доступ к серверу сценариев Windows. Обратитесь к системному администратору»? Однако и для этой проблемы есть решение.

Как включить сервер сценариев Windows

Вам понадобится

  • Права администратора.

Инструкция

Запустите редактор системного реестра. Для этого введите команду regedit в поле «Выполнить», размещенное в основном меню «Пуск». Нажмите ввод, чтобы команда выполнила запуск редактора реестра. Как правило, команды в реестре персонального компьютера должны вводиться точно, без ошибок.

Окно редактора реестра делится на две области: в левой части отображается структура основных разделов системы, в правой части — их содержимое. Вам нужно найти раздел HKEY_LOCAL_MACHINE и развернуть его. Затем — папку SOFTWARE, Microsoft, Windows и Script Host внутри нее, затем выделить папуку Settings для вывода ее содержимого в правой части окна редактора.

Найдите параметр Enabled. Если такого параметра нет, создайте новый строковой параметр с названием Enabled. Установите значение 0 (программа автоматически преобразует ноль в комбинацию символов вида 0х00000001 — это нормально) и нажмите ввод. Закройте редактор реестра. Попробуйте снова выполнить те действия, которые приводили к ошибке сервера сценариев, чтобы проверить результат работы. Ошибка не должна возникнуть снова.

Обратите внимание

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

Войти на сайт

или

Забыли пароль?
Еще не зарегистрированы?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Если вы получили этот доступ к Windows Script Host на этом компьютере, обратитесь к администратору для получения сообщения на вашем компьютере с Windows 10/8/7, тогда этот пост может вас заинтересовать. Сегодня мы увидим, как вы можете включить или отключить Windows Script Host.

Доступ к Windows Script Host отключен на этом компьютере

Windows Script Host или WSH – это технология Microsoft, которая предоставляет такие возможности сценариев, как командные файлы, но включает в себя множество других функций. Такие сценарии можно запускать непосредственно с рабочего стола, дважды щелкнув файл сценария или из командной строки. Его можно запускать либо с хоста в защищенном режиме Windows wscript.exe , либо с хоста на основе командной оболочки реального режима cscript.exe .

Сообщалось, что несколько «вредоносных программ HTML» используют объекты WSH, в результате чего те, кому эта функция не требуется, обычно ее отключают. Но отключение WSH не позволит пользователям запускать какие-либо сценарии, включая сценарии VBScript и JScript, которые используют эту технологию – и некоторым программам может потребоваться включить эту функцию.

Включить, отключить Windows Script Host

Чтобы включить или отключить Windows Script Host, введите regedit.exe в поле «Выполнить» и нажмите Enter, чтобы открыть редактор реестра.

Перейдите к следующей клавише:

HKEY_LOCAL_MACHINE Software Microsoft Windows Script Host Настройки


На правой панели вы увидите Включено . Если вы видите запись 0 , это означает, что доступ к Windows Script Host отключен на вашем компьютере с Windows.

Дважды нажмите на него и укажите значение Value 1 , чтобы включить его.

  • Значение 1 активирует Windows Script Host.
  • Значение 0 отключит Windows Script Host.

Нажмите OK и выйдите из Реестра. Если вы не видите эту запись, возможно, вам придется ее создать, так как она не существует по умолчанию в Windows.

Теперь вы больше не будете получать доступ к Windows Script Host на этом компьютере. Таким образом, вы можете включить или отключить Windows Script Host.

Вы также можете использовать наш FixWin для решения этой проблемы. Он предлагает исправление в 1 клик в разделе Дополнительные исправления.

Этот пост покажет вам, как исправить другие ошибки Windows Script Host в Windows 10.

Кратко расскажу, как включить выполнение сценариев PowerShell в Windows, если не получается с помощью этого великолепного средства удобно и быстро менять конфигурацию операционной системы или программ, останавливать и запускать сервисы, выполнять полезные bat-файлы и так далее.

Ничего сложного в этой процедуре нет — просто нужна от пользователя «капелька» внимательности.

Powershell

Откройте редактор локальной групповой политики (в поиске Windows или через меню «Выполнить» (вызывается клавишами Win+R) введите «gpedit.msc» и нажмите клавишу «Enter» на клавиатуре)…

выполнить
открыть и выполнить

В левой части окна «Редактор локальной групповой политики» переходим по пути…

Конфигурация компьютера — Административные шаблоны — Компоненты Windows — Windows Powershell…

редактор локальной групповой политики

Справа в рабочем окне находим пункт «Включить выполнение сценариев» и кликаем на него правой кнопкой мыши — выбираем «Изменить».

Ставим точку на «Включено» и проверяем, чтоб в разделе «Параметры:» (Политики выполнения) было выбрано «Разрешить локальные сценарии и удаленные подписанные сценарии» — нажимаем «Применить» …

включить выполнение сценариев Powershell

Еще разок перепроверяем себя…

выполнение сценариев Powershell включено

Кликаем «Ок» и закрываем все ранее открытые окна. Поздравляю, теперь знаете, как включить выполнение сценариев Powershell в Windows 10.

Вышеописанный метод точно работает в Windows 10 Pro и Enterprise. В домашней версии операционной системы Windows 10 нужно погружаться в реестр…

Включаем выполнение сценариев PowerShell через реестр

Неопытным пользователям не советую самостоятельно лезть в реестр Windows, чтоб включить выполнение сценариев PowerShell, а опытные — легко пройдут в редакторе реестра (Win+R и команда «regedit»)…

реестр Windows

…по пути… 

HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindows

…создадут раздел под названием «PowerShell» , разместят в нем «Параметр DWORD (32 бита)» под именем «EnableScripts» и зададут ему значение «1»…

EnableScripts

Далее они вернутся в раздел «PowerShell» и создав «Строковый параметр» с именем «ExecutionPolicy» присвоят ему значение «RemoteSigned» …

RemoteSigned

Жмем «Ок» , закрываем все ранее открытые окна и радуемся. 🙂

Теперь знаете, как включить выполнение сценариев PowerShell. Полученные сегодня знания многократно принесут пользу опытным пользователям в будущем. Например, при активации автозапуска для хот-спота Windows 10.

ПОЛЕЗНОЕ ВИДЕО

До новых полезных компьютерных программ и советов.

svengaliУверенный пользователь трех домашних ПК с многолетним опытом, «компьютерщик» для всех родственников, соседей и знакомых, в течении 12-ти лет автор более тысячи обзоров интересных и полезных программ для компьютера на собственном софтовом блоге OptimaKomp.RU

как ускорить интернет программы для зрения мало места на диске

Содержание

  1. Как исправить ошибку Windows Script Host?
  2. Решение 1. Просканируйте свой компьютер на наличие вредоносных программ
  3. Решение 2. Запустите сканирование SFC и DISM
  4. Решение 3. Восстановите значение VBS по умолчанию через реестр
  5. Решение 4. Отключите Windows Script Host через реестр
  6. Windows PowerShell. Выполнение сценариев отключено в этой системе
  7. Использование сценариев сервера сценариев Windows как CGI-сценариев
  8. Аннотация
  9. Дополнительная информация
  10. Ссылки
  11. Данном компьютере отключен доступ серверу сценариев windows
  12. Question
  13. Réponses

Как исправить ошибку Windows Script Host?

С ошибкой сценария хоста Windows можно столкнуться в любое время, независимо от того, какую версию операционной системы вы используете. Неожиданное появление этого сбоя указывает на то, что какой-то модуль работает не так, и необходимо внести соответствующие исправления.

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

При этом причины возникновения этой проблемы могут различаться, но чаще всего это указывает на заражение вредоносным ПО. Поэтому в качестве самого первого шага, в попытке исправить ситуацию, следует выполнить полное сканирование системы с помощью надёжного антивирусного программного обеспечения. Помимо этого проблема может быть вызвана повреждёнными системными файлами, ошибками в реестре или чем-то ещё. Поэтому ниже вы найдете несколько решений, для разных ситуаций.

Решение 1. Просканируйте свой компьютер на наличие вредоносных программ

Хотя на рынке существует множество сторонних приложений для защиты системы, Windows включает в себя бесплатный антивирус – Защитник Windows. В настоящее время это программное обеспечение находится на одном уровне со многими известными поставщиками ПО безопасности. Поэтому при отсутствии на компьютере стороннего антивируса, используйте его. Первым делом необходимо выяснить, заключается ли проблема в наличии вредоносных программ на ПК.

  1. Щелкните правой кнопкой мыши Пуск и выберите Параметры.
  2. Перейдите к обновлению и безопасности.
  3. Выберите Безопасность Windows слева и нажмите Защита от вирусов и угроз.
  4. Затем кликните на Параметры сканирования;
  5. Нажмите флажок Проверка автономного Защитника Windows и Сканировать сейчас.

Это действие перезагрузит компьютер и запустит глубокое сканирование системы.

Решение 2. Запустите сканирование SFC и DISM

Средство проверки системных файлов может диагностировать и восстанавливать проблемные или повреждённые системные данные Windows:

  1. Введите cmd в поиске Windows.
  2. Щелкните правой кнопкой мыши командную строку и выберите Запуск от имени администратора.
  3. В новом окне введите sfc /scannow и нажмите Enter. Выполните сканирование SFC.
  4. Дождитесь завершения работы программы, и перезагрузите компьютер.

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

  • Dism/Online/Cleanup-Image/CheckHealth;
  • Dism/Online/Cleanup-Image/ScanHealth;
  • Dism/Online/Cleanup-Image/RestoreHealth.

Решение 3. Восстановите значение VBS по умолчанию через реестр

Неправильное изменение реестра Windows может привести к ошибкам, повреждению системных файлов и ОС. Убедитесь, что вы сделали резервную копию базы данных, прежде чем переходить к следующим шагам.

  1. Введите regedit в поиске Windows и нажмите Enter.
  2. Зайдите в реестр. Если отобразится Контроль учётных записей пользователей, нажмите Да.
  3. В открывшемся окне реестра нажмите на строку Правка, а затем – Найти и введите Vbs – нужно найти одноименную папку.
  4. Дважды щелкните ключ по умолчанию справа.
  5. Убедитесь, что для ключа установлено значение VBSFile, и нажмите OK.
  6. Восстановите значение VBS по умолчанию.

Решение 4. Отключите Windows Script Host через реестр

Windows Script Host был представлен в Windows 98 – он позволяет запускать на компьютере больше языков программирования. К сожалению, если вредоносному ПО удастся проникнуть в устройство, оно может злоупотребить этим и получить доступ к большему количеству внутренних функций. Таким образом, полное отключение Windows Script Host, если он не используется, является хорошей практикой безопасности, которая также остановит появление связанной с ним ошибки.

  1. Введите regedit в поиске Windows и нажмите Enter.
  2. После захода в редактор реестра перейдите по следующему пути: HKEY_CURRENT_USERSoftware MicrosoftWindows Script HostSettings.
  3. Если справа вы не видите ключ Enabled, создайте его.
  4. Для этого щелкните правой кнопкой мыши в пустое место в правом окне и выберите «Создать»> «Значение DWORD (32 бита)».
  5. После появления ключа дважды щелкните по нему ЛКМ и установите для него значение 0 Отключить хост Windows Script.
  6. Теперь перейдите по следующему пути и повторите шаги, описанные выше: HKEY_LOCAL_MACHINESoftwareMicrosoftWindows Script HostSettings.

Примечание. При каждой попытке запуска файла VBS вы будете получать сообщение об ошибке: «Доступ к сценарию хоста Windows отключён на этом компьютере». Вы можете повторно включить его, изменив значение ключа в упомянутых разделах реестра на 1.

Windows PowerShell. Выполнение сценариев отключено в этой системе

По умолчанию выполнение сценариев Windows PowerShell в системе запрещено. По соображениям безопасности все скрипты PowerShell должны быть подписаны цифровой подписью, данный метод называется — политика выполнения.

Если скрипт не соответствует этому условию, то выполнение сценариев PowerShell в системе запрещено. Это связано в первую очередь с тем, что в скрипте может находиться вредоносный код, который может нанести вред операционной системе.

PowerShell имеет несколько режимов выполнения, которые определяют, какой тип кода разрешается выполнять. Существует 5 различных режимов выполнения:

  1. Ограниченный (Restricted) — значение по умолчанию. Блокируется выполнение любых скриптов и разрешается работа интерактивных команд.
  2. Все подписанные (All Signed) — разрешено выполнение скриптов, имеющих цифровую подпись.
  3. Удаленные подписанные (Remote Signed) — локальные скрипты работают без подписи. Все скачанные скрипты должны иметь цифровую подпись.
  4. Неограниченный (Unrestricted) — разрешено выполнение любых скриптов. При запуске не подписанного скрипта, который был загружен из Интернета, программа может потребовать подтверждение.
  5. Обходной (Bypass) — ничего не блокируется, никакие предупреждения и запросы не появляются.

По умолчанию для PowerShell используется режим «Ограниченный». В этом режиме, PowerShell работает как интерактивная оболочка. Если вы ранее не настраивали PowerShell, то вместо работы скрипта вы увидите сообщение об ошибке, написанное красным шрифтом как на скриншоте ниже.

Самым безопасным способом решения этой проблемы является – изменение политики выполнения на неограниченную, запуск скрипта, и затем обратный возврат к ограниченной политике.

Для изменения политики выполнения на неограниченную, воспользуемся консолью PowerShell открытую с правами Администратора и выполним следующую команду:

После запуска команды вам будет предложено подтвердить изменение политики выполнения. Ответим Y ( Да ).

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

После запуска команды вам будет предложено подтвердить изменение политики выполнения. Ответим Y ( Да )

Далее ниже представлены все команды для изменения политики выполнения.

Блокируется выполнение любых скриптов. Значение по умолчанию.

Разрешено выполнение скриптов, имеющих цифровую подпись.

Скрипты, подготовленные на локальном компьютере, можно запускать без ограничений, скрипты, загруженные из Интернета — только при наличии цифровой подписи.

Разрешено выполнение любых скриптов. При запуске не подписанного скрипта, который был загружен из Интернета, программа может потребовать подтверждение.

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

Для выполнения выше представленных команд без подтверждения изменения, воспользуйтесь параметром -Force , например выполните команду:

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

Использование сценариев сервера сценариев Windows как CGI-сценариев

Аннотация

При попытке вызова сценария Visual Basic на веб-сервере в контексте сценария CGI, сценарий может не работать правильно. Наиболее вероятной причиной этого является, что обработчик сценариев обычно выполняется в контексте безопасности IUSR_Machine, созданные службами IIS при установке. К сожалению Cscript.exe (обработчик сценариев) требует наличия определенных записей реестра для пользователя IUSR_Machine. Поскольку куст HKEY_CURRENT_USER недоступен для IUSR_Machine, IIS будет загружать HKEY_USERS. По умолчанию куста на его месте. Тем не менее HKEY_USERS. Куст по умолчанию не содержит необходимые разделы и записи для обработчика сценариев. В этих случаях возникнет ошибка CGI, без дополнительной информации. Или если файл Cscript.exe была запущена в пакетном режиме, будет отображаться сообщение об ошибке, указывающее, что не удалось загрузить параметры для указанного пользователя. В этом документе показывается Настройка компьютера IIS для выполнения как сценарий CGI сценариев Visual Basic.

Дополнительная информация

В данной статье предполагается, что сервер сценариев Windows установлена на компьютере с сервером IIS; параметр установки по умолчанию для NT Option Pack для этого. Чтобы включить поддержку VBScript, выполните следующие действия:

Откройте командную строку. Чтобы сделать это, выполните следующие действия.

В меню Пуск выберите пункт Выполнить.

Введите команду cmdи нажмите кнопку ОК.

Перейдите в папку InetpubAdminScripts. (Это расположение зависит от установки Internet Information Server).

Введите следующие команды:

Cscript adsutil.vbs ЗАДАЙТЕ w3svc/CreateCGIWithNewConsole «1»

Cscript adsutil.vbs ЗАДАЙТЕ w3svc/CreateProcessAsUser «0»

Настройте расширение .vbs для сопоставления Cscript.exe в каталог %SYSTEMROOT%System32. Для этого в консоли управления Microsoft. В частности действия по настройке для IIS4 таковы:

Запустите приложение IIS4 Консоли управления .

Изменение свойств веб-узла (щелкните правой кнопкой мыши веб-узел в дереве отображения и выберите Свойства).

Выберите вкладку Домашний каталог .

В окне Настройки приложения выберите конфигурацию.

На вкладке Сопоставления выберите Добавить.

Исполняемый файл будет иметь следующие действия на компьютере WinNT 4.0 (Убедитесь, что используется правильный путь к Cscript.exe на установочном WinNT):

Введите расширение .vbs .

Убедитесь, что установлены флажки Обработчиком сценария и Убедитесь, что существует файлов .

Сохраните файл, нажав кнопку OK, Применить, ОКи ОК еще раз.

С помощью редактора реестра, создайте следующие разделы и записи:

Убедитесь, что всем пользователям доступ на чтение для этих двух разделов. Теперь можно создайте следующие записи:

Теперь скопируйте файл сценария .vbs виртуального каталога на сервере, на котором есть разрешения на выполнение сценариев. По умолчанию каталог/Scripts будет иметь необходимые разрешения.

Вы сможете проверить конфигурацию работает и не создавая следующий сценарий:

Сохраните указанный сценарий в каталоге/Scripts как Test.vbs. Теперь можно вызовите с помощью любого браузера следующий URL-адрес сценария:

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

Ссылки

Интернета сведения сервера электронной документации.

Данном компьютере отключен доступ серверу сценариев windows

Question

При запуске программы появилось окно с сообщением:

На данном компютере отключен доступ к серверу сценариев Windows. Обратитесь к системному администратору.

Так как системного администратора у меня нет обращаюсь сюда. Подскажите как этот доступ включить.

Réponses

Ех, любите вы обсуждать сторонний неработающий софт на форумах МС, то ccleaner у Вас не работает, то драйвер пак.

К сожалению я понятия не имею что создатели, этой чудо софтины имели в виду под сервером сценариев.

Об этом стоит спросить создателей упомянутого ПО, ведь они точно так же могли написать нечто на подобии: «Cannot find Apple updater driver«, или что угодно другое.

В случае если вам еще что то нужно будет погуглить — обращайтесь, мы в легкую погуглим за Вас

The opinion expressed by me is not an official position of Microsoft

Windows Script Host (WSH)

Windows Script Host Icon.png
Other names Windows Scripting Host
Developer(s) Microsoft
Stable release

5.812

Operating system Microsoft Windows
Type Automation technology
License Proprietary commercial software
Website Windows Script Host overview

The Microsoft Windows Script Host (WSH) (formerly named Windows Scripting Host) is an automation technology for Microsoft Windows operating systems that provides scripting abilities comparable to batch files, but with a wider range of supported features. This tool was first provided on Windows 95 after Build 950a on the installation discs as an optional installation configurable and installable by means of the Control Panel, and then a standard component of Windows 98 (Build 1111) and subsequent and Windows NT 4.0 Build 1381 and by means of Service Pack 4. The WSH is also a means of automation for Internet Explorer via the installed WSH engines from IE Version 3.0 onwards; at this time VBScript became means of automation for Microsoft Outlook 97.[1] The WSH is also an optional install provided with a VBScript and JScript engine for Windows CE 3.0 and following and some third-party engines including Rexx and other forms of Basic are also available.[2][3][4]

It is language-independent in that it can make use of different Active Scripting language engines. By default, it interprets and runs plain-text JScript (.JS and .JSE files) and VBScript (.VBS and .VBE files).

Users can install different scripting engines to enable them to script in other languages, for instance PerlScript. The language independent filename extension WSF can also be used. The advantage of the Windows Script File (.WSF) is that it allows multiple scripts («jobs») as well as a combination of scripting languages within a single file.

WSH engines include various implementations for the Rexx, BASIC, Perl, Ruby, Tcl, PHP, JavaScript, Delphi, Python, XSLT, and other languages.

Windows Script Host is distributed and installed by default on Windows 98 and later versions of Windows. It is also installed if Internet Explorer 5 (or a later version) is installed. Beginning with Windows 2000, the Windows Script Host became available for use with user login scripts.

Usage[edit]

Windows Script Host may be used for a variety of purposes, including logon scripts, administration and general automation. Microsoft describes it as an administration tool.[5] WSH provides an environment for scripts to run – it invokes the appropriate script engine and provides a set of services and objects for the script to work with.[5] These scripts may be run in GUI mode (WScript.exe) or command line mode (CScript.exe), or from a COM object (wshom.ocx), offering flexibility to the user for interactive or non-interactive scripts.[6] Windows Management Instrumentation is also scriptable by this means.

The WSH, the engines, and related functionality are also listed as objects which can be accessed and scripted and queried by means of the VBA and Visual Studio object explorers and those for similar tools like the various script debuggers, e.g. Microsoft Script Debugger, and editors.

WSH implements an object model which exposes a set of Component Object Model (COM) interfaces.[7] So in addition to ASP, IIS, Internet Explorer, CScript and WScript, the WSH can be used to automate and communicate with any Windows application with COM and other exposed objects, such as using PerlScript to query Microsoft Access by various means including various ODBC engines and SQL, ooRexxScript to create what are in effect Rexx macros in Microsoft Excel, Quattro Pro, Microsoft Word, Lotus Notes and any of the like, the XLNT script to get environment variables and print them in a new TextPad document, and so on.

The VBA functionality of Microsoft Office, Open Office (as well as Python and other installable macro languages) and Corel WordPerfect Office is separate from WSH engines although Outlook 97 uses VBScript rather than VBA as its macro language.[8]

Python in the form of ActiveState PythonScript can be used to automate and query the data in SecureCRT, as with other languages with installed engines, e.g. PerlScript, ooRexxScript, PHPScript, RubyScript, LuaScript, XLNT and so on. One notable exception is Paint Shop Pro, which can be automated in Python by means of a macro interpreter within the PSP programme itself rather than using the PythonScript WSH engine or an external Python implementation such as Python interpreters supplied with Unix emulation and integration software suites or other standalone Python implementations et al.[9][10] as an intermediate and indeed can be programmed like this even in the absence of any third-party Python installation; the same goes for the Rexx-programmable terminal emulator Passport.[11] The SecureCRT terminal emulator, SecureFX FTP client, and related client and server programmes from Van Dyke are as of the current versions automated by means of the WSH so any language with an installed engine may be used; the software comes with VBScript, JScript, and PerlScript examples.

As of the most recent releases and going back a number of versions now, the programmability of 4NT / Take Command in the latest implementations (by means of «@REXX» and similar for Perl, Python, Tcl, Ruby, Lua, VBScript, JScript and the like and so on) generally uses the WSH engine.[12] The ZOC terminal emulator gets its ability to be programmed in Rexx by means of an external interpreter, one of which is supplied with the programme, and alternate Rexx interpreters can be specified in the configuration of the programme.[13][14] The MKS Toolkit provides PScript, a WSH engine in addition to the standard Perl interpreter perl.exe which comes with the package.

VBScript, JScript, and some third-party engines have the ability to create and execute scripts in an encoded format which prevents editing with a text editor; the file extensions for these encoded scripts is .vbe and .jse and others of that type.

Unless otherwise specified, any WSH scripting engine can be used with the various Windows server software packages to provide CGI scripting. The current versions of the default WSH engines and all or most of the third party engines have socket abilities as well; as a CGI script or otherwise, PerlScript is the choice of many programmers for this purpose and the VBScript and various Rexx-based engines are also rated as sufficiently powerful in connectivity and text-processing abilities to also be useful. This also goes for file access and processing—the earliest WSH engines for VBScript and JScript do not since the base language did not,[15] whilst PerlScript, ooRexxScript, and the others have this from the beginning.

WinWrap Basic, SaxBasic and others are similar to Visual Basic for Applications, These tools are used to add scripting and macro abilities to software being developed and can be found in earlier versions of Host Explorer for example. Many other languages can also be used in this fashion. Other languages used for scripting of programmes include Rexx, Tcl, Perl, Python, Ruby, and others which come with methods to control objects in the operating system and the spreadsheet and database programmes.[16] One exception is that the Zoc terminal emulator is controlled by a Rexx interpreter supplied with the package or another interpreter specified by the user; this is also the case with the Passport emulator.

VBScript is the macro language in Microsoft Outlook 97, whilst WordBasic is used for Word up to 6, Powerpoint and other tools. Excel to 5.0 uses Visual Basic 5.0. In Office 2000 forward, true Visual Basic for Applications 6.0 is used for all components. Other components use Visual Basic for Applications. OpenOffice uses Visual Basic, Python, and several others as macro languages and others can be added. LotusScript is very closely related to VBA and used for Lotus Notes and Lotus SmartSuite, which includes Lotus Word Pro (the current descendant of Ami Pro), Lotus Approach, Lotus FastSite, Lotus 1-2-3, &c, and pure VBA, licensed from Microsoft, is used in Corel products such as WordPerfect, Paradox, Quattro Pro &c.

Any scripting language installed under Windows can be accessed by external means of PerlScript, PythonScript, VBScript and the other engines available can be used to access databases (Lotus Notes, Microsoft Access, Oracle Database, Paradox) and spreadsheets (Microsoft Excel, Lotus 1-2-3, Quattro Pro) and other tools like word processors, terminal emulators, command shells and so on. This can be accomplished by means of the WSH, so any language can be used if there is an installed engine.

In recent versions of the Take Command enhanced command prompt and tools, the «script» command typed at the shell prompt will produce a list of the currently installed engines, one to a line and therefore CR-LF delimited.[17][18][19]

Examples[edit]

The first example is very simple; it shows some VBScript which uses the root WSH COM object «WScript» to display a message with an ‘OK’ button. Upon launching this script the CScript or WScript engine would be called and the runtime environment provided.

Content of a file hello0.vbs

WScript.Echo "Hello world"
WScript.Quit

WSH programming can also use the JScript language.

Content of a file hello1.js

WSH.Echo("Hello world");
WSH.Quit();

Or, code can be mixed in one WSF file, such as VBScript and JScript, or any other:

Content of a file hello2.wsf

<job>
<script language="VBScript">
  MsgBox "hello world (from vb)"
</script>
<script language="JScript">
  WSH.echo("hello world (from js)");
</script>
</job>

Security concerns[edit]

Windows applications and processes may be automated using a script in Windows Script Host. Viruses and malware could be written to exploit this ability. Thus, some suggest disabling it for security reasons.[20] Alternatively, antivirus programs may offer features to control .vbs and other scripts which run in the WSH environment.

Since version 5.6 of WSH, scripts can be digitally signed programmatically using the Scripting.Signer object in a script itself, provided a valid certificate is present on the system. Alternatively, the signcode tool from the Platform SDK, which has been extended to support WSH filetypes, may be used at the command line.[21]

By using Software Restriction Policies introduced with Windows XP, a system may be configured to execute only those scripts which are stored in trusted locations, have a known MD5 hash, or have been digitally signed by a trusted publisher, thus preventing the execution of untrusted scripts.[22]

Available scripting engines[edit]

Note: By definition, all of these scripting engines can be utilised in CGI programming under Windows with any number of programmes and set up, meaning that the source code files for a script used on a server for CGI purposes could bear other file extensions such as .cgi and so on. The aforementioned ability of the Windows Script Host to run a script with multiple languages in it in files with a .wsh extension. Extended Html and XML also add to the additional possibilities when working with scripts for network use, as do Active Server Pages and so forth. Moreover, Windows shell scripts and scripts written in shells with enhanced capabilities like TCC, 4NT, etc. and Unix shells under interoperability software like the MKS Toolkit can have scripts embedded in them as well.

Engine name Scripting language implemented Base language File extensions Availability Produced by Status Initial release date Encoded scripts Notes
VBScript Microsoft VBScript Microsoft Visual Basic .vbs Installed by default Microsoft default install 1999 Yes, .vbe Default windows host script
JScript Microsoft JScript ECMAScript .js Installed by default Microsoft default install 1999 Yes, .jse Default java script host
WinWrap Basic WinWrap Basic Basic .wwb In the main WWB installation Polar Engineering Standard functionality of WWB; Utilises both .NET and COM 2004 Yes
PerlScript Perl Perl 5 .pls with ActiveState Perl ActiveState Open source 1999 Reportedly yes
PScript Perl Perl 5, CGI functionality .p, .ps with MKS Toolkit MKS Commercial 2001
XBScript xBase Scripting Engine xBase (Clipper) .xbs, .prg Clipper with XBScript sofrware Commercial
LotusScript WSH LotusScript Microsoft Visual Basic (q.v.) .nsf Third party download Service Desk Plus Freeware 2001
RexxScript Rexx Rexx .rxs, .rx, .rex With some Rexx implementations Various Freeware 1998
ooRexxScript Open Object REXX REXX .rxs with Open Object Rexx or free from some third parties Open Object Rexx team Open source
PythonScript Python Python .pys SourceForge & with ActivePython The Pywin32 project Open source
TclScript Tcl/Tk Tcl/Tk .tcls SourceForge ActiveState or third party Open source
ActivePHPScript PHP PHP .phps with PHP PHP team Open source
PHPScript PHP PHP .phps with PHP PHP team Open source Earlier version of ActivePHPScript
RubyScript Ruby Ruby .rbs with Ruby distribution Ruby team Open source Yes
XLNTScript XLNT DCL .xcs with XLNT Advanced Systems Concepts, Inc. Commercial 1997 An OpenVMS DCL-based multi-purpose scripting application for Windows
LuaScript Lua Lua .lua with Lua Lua organisation Open Source
Object REXX engine Object REXX Rexx .rex, .rxs with IBM Object REXX IBM Commercial 2002
XML Engine XML parsing Extended HTML, XML .xml with many XML implementations Elf Data de facto Default install 2000 Macintosh too
Kixtart WSH Engine Kixtart KixTart, MS-DOS, Windows 95. Windows NT shells .kix with KixStart Microsoft Netherlands Windows Resource Kits and other resources 1996 Download from Microsoft or elsewhere, aka KixStart32
NullScript NullScript Null language .ns with NullScript NullScript Organisation Windows Resource Kits and other resources 1999
ForthScript Forth Forth .fth, others Forth DMOZ Open Source
Haskell Script Haskell Haskell *.hsk (provisional), others free download Open Source
XSLT WSH Engine XSLT XSLT .xslt free download Open Source
CobolScript WSH Engine Cobol Cobol .cbl. .cob, .cb Fujitsu Cobol 3 — free for educational use Commercialware from Fujitsu free with free compiler for educators &c Proprietary
Delphi scripting engine Delphi Delphi, a Pascal variant .dlp, .del, . In some Delphi distributions or resource kits Commercial 2003
DMDScript DMDScript D, a major incrementation of C .dmd DMD Distributions, download Freeware Available on Web 2014 DMD
C# Script C# Microsoft C#.NET .cs. .c#, others Source code available Open Source, active development underway unclear 2013
Small C Scripting Engine C C (K&R, Ansi) .c, others Various locations, check Web Freeware 2009
JavaScript WSH Engine JavaScript/Java Java & variants .java, .j, jva, others With many JavaScript implementations Sun/Other Java Organisations Freeware
Take Command WSH Engine 4NT/Take Command TCC, the current version of 4NT p .btm, .cmd, bat, others Check JP Software JP Software Proprietary 2015 Early development
92Script WSH Engine TI-89/92+/Voyager 200 TI-Basic Calculator TI-Basic .92bs Project Web/FTP site Various independent programmers Experimental, Open Source 2014 «possible» Beta Q4 2015 for main engine; graphing functionality (92Script/Tk) then or later
48Script WSH Engine HP-48 Calculator family on-board programming language HP 48 Programming Language, distant relative of Forth, Basic, Lisp .48s Project Web/FTP site Various independent programmers Experimental 2015 Planned Status as of 2015-09-30. Language has Lisp, Basic, Forth, and other influences.
Fortran Script Fortran Fortran 77 .for, .ftn. f77, f90, f95 Various Various Experimental proof-of-concept, academic exercise, shareware, commercial, open source. 2000
PascalScript Object Pascal Pascal 7 .pas, .ops, other Object Pascal RemObjects Freeware 2001 Can also be used with Delphi directly
Lisp WSH Engine Lisp Lisp .lisp, .lsp Various Lisp tools AutoLisp and others Freeware or Shareware
BESEN ECMA-JavaScript Java and Variants .bes, .bsn, others SourceForge BESEN Organisation Open Source 2011
ECMAScript WSH engines Java and Variants Various Various Various Various Experimental, Freeware, Open Source, Shareware, Proprietary, Commercialware 2005 There are numerous ECMAScript implementations but not all have WSH engines
CFXScript WSH Engine Casio CFX-9850 and fx Calculator series on-board programming language Casio Calculator Programming Language, as ported to various operating systems as CFW .cfxb Project Web/FTP Sites independent programmers Experimental 2015 Planned[23] Status as of 2015-09-30. Language has elements of Basic, Forth, Fortran, and others.
SharpCalcScript WSH Engine Sharp graphing calculators on-board programming language Sharp S-Basic as ported to windows as NeusSFortran .scsb Project Web/FTP Sites independent programmers Experimental 2015 Planned Status as of 2015-09-30. Also subsumes the S-Basic language of Sharp’s Pocket Computers.

There have been suggestions of creating engines for other languages, such as LotusScript, SaxBasic, BasicScript, KiXtart, awk, bash, csh and other Unix shells, 4NT, cmd.exe (the Windows NT shell), Windows PowerShell, DCL, C, C++, Fortran and others.[24]
The XLNT language[25] is based on DCL and provides a very large subset of the language along with additional commands and statements and the software can be used in three ways: the WSH engine (*.xcs), the console interpreter (*.xlnt) and as a server and client side CGI engine (*.xgi).[26]

When a server implementing CGI such as the Windows Internet Information Server, ports of Apache and others, all or most of the engines can be used; the most commonly used are VBScript, JScript, PythonScript, PerlScript, ActivePHPScript, and ooRexxScript. The MKS Toolkit PScript program also runs Perl. Command shells like cmd.exe, 4NT, ksh, and scripting languages with string processing and preferably socket functionality are also able to be used for CGI scripting; compiled languages like C++, Visual Basic, and Java can also be used like this. All Perl interpreters, ooRexx, PHP, and more recent versions of VBScript and JScript can use sockets for TCP/IP and usually UDP and other protocols for this.

Version history[edit]

Windows version Shipped with WSH version Last redistributable version
Windows 95 None (separate redistributable) 5.6
Windows NT 4.0 None (separate redistributable) 5.6
Windows NT Server 4.0 None (separate redistributable) 5.6
Windows CE 3.0 1.0 (optional install on installer disc) 2.0
Windows 98 1.0 5.6
Windows 98 Second Edition 1.0 5.6
Windows 2000 2.0 (also termed WSH 5.1) 5.7
Windows 2000 Server 2.0 (also termed WSH 5.1) 5.7
Windows 2000 SP3, SP4 and SP5 5.6 5.7
Windows Me 2.0 (also termed WSH 5.1) 5.6
Windows XP 5.6 5.7
Windows XP SP3 5.7 Not applicable
Windows Server 2003 5.6 5.7
Windows Vista 5.7 Not applicable
Windows Server 2008 5.7 Not applicable
Windows 7 5.8 Not applicable
Windows Server 2008 R2 5.8 Not applicable
Windows 8 5.8 Not applicable
Windows Server 2012 5.8 Not applicable
Windows 10 5.812 Not applicable
Windows Server 2016 5.812 Not applicable

The redistributable version of WSH version 5.6 can be installed on Windows 95/98/Me and Windows NT 4.0/2000. WSH 5.7 is downloadable for Windows 2000, Windows XP and Windows Server 2003. Recently[when?], redistributable versions for older operating systems (Windows 9x and Windows NT 4.0) are no longer available from the Microsoft Download Center.

Since Windows XP Service Pack 3, release 5.7 is not needed as it is included, with newer revisions being included in newer versions of Windows since.

See also[edit]

  • JScript .NET

References[edit]

  1. ^ ?MSDN, «Windows Scripting Host» and «VBScript»
  2. ^ MSDN April 2000 edition, «Windows Scripting Host»
  3. ^ The VBScript Bible (1999)
  4. ^ Windows 2000 Server Resource Kit (documentation
  5. ^ a b «What Is WSH?». msdn.microsoft.com. Archived from the original on 7 January 2018. Retrieved 30 April 2018.
  6. ^ «Windows Script Host Basics». msdn.microsoft.com. Archived from the original on 8 August 2017. Retrieved 30 April 2018.
  7. ^ «Windows Script Host Object Model». msdn.microsoft.com. Archived from the original on 8 August 2017. Retrieved 30 April 2018.
  8. ^ MSDN «VBA»
  9. ^ User’s Manual, Paint Shop Pro 8
  10. ^ Paint Shop Pro 8 help, «Automation»
  11. ^ main help file, Passport for Windows
  12. ^ Take Command documentation 18.00 documentation hard copy and Help file
  13. ^ Zoc v 6.0 help
  14. ^ Zoc 5.0 printed manual
  15. ^ MSDN documentation
  16. ^ Windows Office 97 & 2000 Bibles (Wiley)
  17. ^ Take Command version 18.00 documentation
  18. ^ JP Software Take Command-4NT-4Dos-4OS/2 site, bulletin board
  19. ^ Take Command 18.00 help
  20. ^ «Norman — Antivirus & Security Software for Home & Business». AVG.com. Archived from the original on 21 February 2006. Retrieved 30 April 2018.
  21. ^ LLC), Tara Meyer (Aquent. «Providing a Secure eXPerience». msdn.microsoft.com. Archived from the original on 10 November 2017. Retrieved 30 April 2018.
  22. ^ Windows Script Host 5.6 Boasts Windows XP Integration, Security, New Object Model Archived 2008-02-18 at the Wayback Machine
  23. ^ CasioCalc.com, msgs of 15.09.2016
  24. ^ «Notes/Domino 4 and 5 Forum : RE: Suggestion: Make LotusScript a script engine for Windows Scripting Host». Archived from the original on 2015-03-21. Retrieved 2015-03-12.
  25. ^ ASCI html help file
  26. ^ ASCI site

External links[edit]

  • Windows Script Host
  • Windows Script Host Reference on microsoft.com
Windows Script Host (WSH)

Windows Script Host Icon.png
Other names Windows Scripting Host
Developer(s) Microsoft
Stable release

5.812

Operating system Microsoft Windows
Type Automation technology
License Proprietary commercial software
Website Windows Script Host overview

The Microsoft Windows Script Host (WSH) (formerly named Windows Scripting Host) is an automation technology for Microsoft Windows operating systems that provides scripting abilities comparable to batch files, but with a wider range of supported features. This tool was first provided on Windows 95 after Build 950a on the installation discs as an optional installation configurable and installable by means of the Control Panel, and then a standard component of Windows 98 (Build 1111) and subsequent and Windows NT 4.0 Build 1381 and by means of Service Pack 4. The WSH is also a means of automation for Internet Explorer via the installed WSH engines from IE Version 3.0 onwards; at this time VBScript became means of automation for Microsoft Outlook 97.[1] The WSH is also an optional install provided with a VBScript and JScript engine for Windows CE 3.0 and following and some third-party engines including Rexx and other forms of Basic are also available.[2][3][4]

It is language-independent in that it can make use of different Active Scripting language engines. By default, it interprets and runs plain-text JScript (.JS and .JSE files) and VBScript (.VBS and .VBE files).

Users can install different scripting engines to enable them to script in other languages, for instance PerlScript. The language independent filename extension WSF can also be used. The advantage of the Windows Script File (.WSF) is that it allows multiple scripts («jobs») as well as a combination of scripting languages within a single file.

WSH engines include various implementations for the Rexx, BASIC, Perl, Ruby, Tcl, PHP, JavaScript, Delphi, Python, XSLT, and other languages.

Windows Script Host is distributed and installed by default on Windows 98 and later versions of Windows. It is also installed if Internet Explorer 5 (or a later version) is installed. Beginning with Windows 2000, the Windows Script Host became available for use with user login scripts.

Usage[edit]

Windows Script Host may be used for a variety of purposes, including logon scripts, administration and general automation. Microsoft describes it as an administration tool.[5] WSH provides an environment for scripts to run – it invokes the appropriate script engine and provides a set of services and objects for the script to work with.[5] These scripts may be run in GUI mode (WScript.exe) or command line mode (CScript.exe), or from a COM object (wshom.ocx), offering flexibility to the user for interactive or non-interactive scripts.[6] Windows Management Instrumentation is also scriptable by this means.

The WSH, the engines, and related functionality are also listed as objects which can be accessed and scripted and queried by means of the VBA and Visual Studio object explorers and those for similar tools like the various script debuggers, e.g. Microsoft Script Debugger, and editors.

WSH implements an object model which exposes a set of Component Object Model (COM) interfaces.[7] So in addition to ASP, IIS, Internet Explorer, CScript and WScript, the WSH can be used to automate and communicate with any Windows application with COM and other exposed objects, such as using PerlScript to query Microsoft Access by various means including various ODBC engines and SQL, ooRexxScript to create what are in effect Rexx macros in Microsoft Excel, Quattro Pro, Microsoft Word, Lotus Notes and any of the like, the XLNT script to get environment variables and print them in a new TextPad document, and so on.

The VBA functionality of Microsoft Office, Open Office (as well as Python and other installable macro languages) and Corel WordPerfect Office is separate from WSH engines although Outlook 97 uses VBScript rather than VBA as its macro language.[8]

Python in the form of ActiveState PythonScript can be used to automate and query the data in SecureCRT, as with other languages with installed engines, e.g. PerlScript, ooRexxScript, PHPScript, RubyScript, LuaScript, XLNT and so on. One notable exception is Paint Shop Pro, which can be automated in Python by means of a macro interpreter within the PSP programme itself rather than using the PythonScript WSH engine or an external Python implementation such as Python interpreters supplied with Unix emulation and integration software suites or other standalone Python implementations et al.[9][10] as an intermediate and indeed can be programmed like this even in the absence of any third-party Python installation; the same goes for the Rexx-programmable terminal emulator Passport.[11] The SecureCRT terminal emulator, SecureFX FTP client, and related client and server programmes from Van Dyke are as of the current versions automated by means of the WSH so any language with an installed engine may be used; the software comes with VBScript, JScript, and PerlScript examples.

As of the most recent releases and going back a number of versions now, the programmability of 4NT / Take Command in the latest implementations (by means of «@REXX» and similar for Perl, Python, Tcl, Ruby, Lua, VBScript, JScript and the like and so on) generally uses the WSH engine.[12] The ZOC terminal emulator gets its ability to be programmed in Rexx by means of an external interpreter, one of which is supplied with the programme, and alternate Rexx interpreters can be specified in the configuration of the programme.[13][14] The MKS Toolkit provides PScript, a WSH engine in addition to the standard Perl interpreter perl.exe which comes with the package.

VBScript, JScript, and some third-party engines have the ability to create and execute scripts in an encoded format which prevents editing with a text editor; the file extensions for these encoded scripts is .vbe and .jse and others of that type.

Unless otherwise specified, any WSH scripting engine can be used with the various Windows server software packages to provide CGI scripting. The current versions of the default WSH engines and all or most of the third party engines have socket abilities as well; as a CGI script or otherwise, PerlScript is the choice of many programmers for this purpose and the VBScript and various Rexx-based engines are also rated as sufficiently powerful in connectivity and text-processing abilities to also be useful. This also goes for file access and processing—the earliest WSH engines for VBScript and JScript do not since the base language did not,[15] whilst PerlScript, ooRexxScript, and the others have this from the beginning.

WinWrap Basic, SaxBasic and others are similar to Visual Basic for Applications, These tools are used to add scripting and macro abilities to software being developed and can be found in earlier versions of Host Explorer for example. Many other languages can also be used in this fashion. Other languages used for scripting of programmes include Rexx, Tcl, Perl, Python, Ruby, and others which come with methods to control objects in the operating system and the spreadsheet and database programmes.[16] One exception is that the Zoc terminal emulator is controlled by a Rexx interpreter supplied with the package or another interpreter specified by the user; this is also the case with the Passport emulator.

VBScript is the macro language in Microsoft Outlook 97, whilst WordBasic is used for Word up to 6, Powerpoint and other tools. Excel to 5.0 uses Visual Basic 5.0. In Office 2000 forward, true Visual Basic for Applications 6.0 is used for all components. Other components use Visual Basic for Applications. OpenOffice uses Visual Basic, Python, and several others as macro languages and others can be added. LotusScript is very closely related to VBA and used for Lotus Notes and Lotus SmartSuite, which includes Lotus Word Pro (the current descendant of Ami Pro), Lotus Approach, Lotus FastSite, Lotus 1-2-3, &c, and pure VBA, licensed from Microsoft, is used in Corel products such as WordPerfect, Paradox, Quattro Pro &c.

Any scripting language installed under Windows can be accessed by external means of PerlScript, PythonScript, VBScript and the other engines available can be used to access databases (Lotus Notes, Microsoft Access, Oracle Database, Paradox) and spreadsheets (Microsoft Excel, Lotus 1-2-3, Quattro Pro) and other tools like word processors, terminal emulators, command shells and so on. This can be accomplished by means of the WSH, so any language can be used if there is an installed engine.

In recent versions of the Take Command enhanced command prompt and tools, the «script» command typed at the shell prompt will produce a list of the currently installed engines, one to a line and therefore CR-LF delimited.[17][18][19]

Examples[edit]

The first example is very simple; it shows some VBScript which uses the root WSH COM object «WScript» to display a message with an ‘OK’ button. Upon launching this script the CScript or WScript engine would be called and the runtime environment provided.

Content of a file hello0.vbs

WScript.Echo "Hello world"
WScript.Quit

WSH programming can also use the JScript language.

Content of a file hello1.js

WSH.Echo("Hello world");
WSH.Quit();

Or, code can be mixed in one WSF file, such as VBScript and JScript, or any other:

Content of a file hello2.wsf

<job>
<script language="VBScript">
  MsgBox "hello world (from vb)"
</script>
<script language="JScript">
  WSH.echo("hello world (from js)");
</script>
</job>

Security concerns[edit]

Windows applications and processes may be automated using a script in Windows Script Host. Viruses and malware could be written to exploit this ability. Thus, some suggest disabling it for security reasons.[20] Alternatively, antivirus programs may offer features to control .vbs and other scripts which run in the WSH environment.

Since version 5.6 of WSH, scripts can be digitally signed programmatically using the Scripting.Signer object in a script itself, provided a valid certificate is present on the system. Alternatively, the signcode tool from the Platform SDK, which has been extended to support WSH filetypes, may be used at the command line.[21]

By using Software Restriction Policies introduced with Windows XP, a system may be configured to execute only those scripts which are stored in trusted locations, have a known MD5 hash, or have been digitally signed by a trusted publisher, thus preventing the execution of untrusted scripts.[22]

Available scripting engines[edit]

Note: By definition, all of these scripting engines can be utilised in CGI programming under Windows with any number of programmes and set up, meaning that the source code files for a script used on a server for CGI purposes could bear other file extensions such as .cgi and so on. The aforementioned ability of the Windows Script Host to run a script with multiple languages in it in files with a .wsh extension. Extended Html and XML also add to the additional possibilities when working with scripts for network use, as do Active Server Pages and so forth. Moreover, Windows shell scripts and scripts written in shells with enhanced capabilities like TCC, 4NT, etc. and Unix shells under interoperability software like the MKS Toolkit can have scripts embedded in them as well.

Engine name Scripting language implemented Base language File extensions Availability Produced by Status Initial release date Encoded scripts Notes
VBScript Microsoft VBScript Microsoft Visual Basic .vbs Installed by default Microsoft default install 1999 Yes, .vbe Default windows host script
JScript Microsoft JScript ECMAScript .js Installed by default Microsoft default install 1999 Yes, .jse Default java script host
WinWrap Basic WinWrap Basic Basic .wwb In the main WWB installation Polar Engineering Standard functionality of WWB; Utilises both .NET and COM 2004 Yes
PerlScript Perl Perl 5 .pls with ActiveState Perl ActiveState Open source 1999 Reportedly yes
PScript Perl Perl 5, CGI functionality .p, .ps with MKS Toolkit MKS Commercial 2001
XBScript xBase Scripting Engine xBase (Clipper) .xbs, .prg Clipper with XBScript sofrware Commercial
LotusScript WSH LotusScript Microsoft Visual Basic (q.v.) .nsf Third party download Service Desk Plus Freeware 2001
RexxScript Rexx Rexx .rxs, .rx, .rex With some Rexx implementations Various Freeware 1998
ooRexxScript Open Object REXX REXX .rxs with Open Object Rexx or free from some third parties Open Object Rexx team Open source
PythonScript Python Python .pys SourceForge & with ActivePython The Pywin32 project Open source
TclScript Tcl/Tk Tcl/Tk .tcls SourceForge ActiveState or third party Open source
ActivePHPScript PHP PHP .phps with PHP PHP team Open source
PHPScript PHP PHP .phps with PHP PHP team Open source Earlier version of ActivePHPScript
RubyScript Ruby Ruby .rbs with Ruby distribution Ruby team Open source Yes
XLNTScript XLNT DCL .xcs with XLNT Advanced Systems Concepts, Inc. Commercial 1997 An OpenVMS DCL-based multi-purpose scripting application for Windows
LuaScript Lua Lua .lua with Lua Lua organisation Open Source
Object REXX engine Object REXX Rexx .rex, .rxs with IBM Object REXX IBM Commercial 2002
XML Engine XML parsing Extended HTML, XML .xml with many XML implementations Elf Data de facto Default install 2000 Macintosh too
Kixtart WSH Engine Kixtart KixTart, MS-DOS, Windows 95. Windows NT shells .kix with KixStart Microsoft Netherlands Windows Resource Kits and other resources 1996 Download from Microsoft or elsewhere, aka KixStart32
NullScript NullScript Null language .ns with NullScript NullScript Organisation Windows Resource Kits and other resources 1999
ForthScript Forth Forth .fth, others Forth DMOZ Open Source
Haskell Script Haskell Haskell *.hsk (provisional), others free download Open Source
XSLT WSH Engine XSLT XSLT .xslt free download Open Source
CobolScript WSH Engine Cobol Cobol .cbl. .cob, .cb Fujitsu Cobol 3 — free for educational use Commercialware from Fujitsu free with free compiler for educators &c Proprietary
Delphi scripting engine Delphi Delphi, a Pascal variant .dlp, .del, . In some Delphi distributions or resource kits Commercial 2003
DMDScript DMDScript D, a major incrementation of C .dmd DMD Distributions, download Freeware Available on Web 2014 DMD
C# Script C# Microsoft C#.NET .cs. .c#, others Source code available Open Source, active development underway unclear 2013
Small C Scripting Engine C C (K&R, Ansi) .c, others Various locations, check Web Freeware 2009
JavaScript WSH Engine JavaScript/Java Java & variants .java, .j, jva, others With many JavaScript implementations Sun/Other Java Organisations Freeware
Take Command WSH Engine 4NT/Take Command TCC, the current version of 4NT p .btm, .cmd, bat, others Check JP Software JP Software Proprietary 2015 Early development
92Script WSH Engine TI-89/92+/Voyager 200 TI-Basic Calculator TI-Basic .92bs Project Web/FTP site Various independent programmers Experimental, Open Source 2014 «possible» Beta Q4 2015 for main engine; graphing functionality (92Script/Tk) then or later
48Script WSH Engine HP-48 Calculator family on-board programming language HP 48 Programming Language, distant relative of Forth, Basic, Lisp .48s Project Web/FTP site Various independent programmers Experimental 2015 Planned Status as of 2015-09-30. Language has Lisp, Basic, Forth, and other influences.
Fortran Script Fortran Fortran 77 .for, .ftn. f77, f90, f95 Various Various Experimental proof-of-concept, academic exercise, shareware, commercial, open source. 2000
PascalScript Object Pascal Pascal 7 .pas, .ops, other Object Pascal RemObjects Freeware 2001 Can also be used with Delphi directly
Lisp WSH Engine Lisp Lisp .lisp, .lsp Various Lisp tools AutoLisp and others Freeware or Shareware
BESEN ECMA-JavaScript Java and Variants .bes, .bsn, others SourceForge BESEN Organisation Open Source 2011
ECMAScript WSH engines Java and Variants Various Various Various Various Experimental, Freeware, Open Source, Shareware, Proprietary, Commercialware 2005 There are numerous ECMAScript implementations but not all have WSH engines
CFXScript WSH Engine Casio CFX-9850 and fx Calculator series on-board programming language Casio Calculator Programming Language, as ported to various operating systems as CFW .cfxb Project Web/FTP Sites independent programmers Experimental 2015 Planned[23] Status as of 2015-09-30. Language has elements of Basic, Forth, Fortran, and others.
SharpCalcScript WSH Engine Sharp graphing calculators on-board programming language Sharp S-Basic as ported to windows as NeusSFortran .scsb Project Web/FTP Sites independent programmers Experimental 2015 Planned Status as of 2015-09-30. Also subsumes the S-Basic language of Sharp’s Pocket Computers.

There have been suggestions of creating engines for other languages, such as LotusScript, SaxBasic, BasicScript, KiXtart, awk, bash, csh and other Unix shells, 4NT, cmd.exe (the Windows NT shell), Windows PowerShell, DCL, C, C++, Fortran and others.[24]
The XLNT language[25] is based on DCL and provides a very large subset of the language along with additional commands and statements and the software can be used in three ways: the WSH engine (*.xcs), the console interpreter (*.xlnt) and as a server and client side CGI engine (*.xgi).[26]

When a server implementing CGI such as the Windows Internet Information Server, ports of Apache and others, all or most of the engines can be used; the most commonly used are VBScript, JScript, PythonScript, PerlScript, ActivePHPScript, and ooRexxScript. The MKS Toolkit PScript program also runs Perl. Command shells like cmd.exe, 4NT, ksh, and scripting languages with string processing and preferably socket functionality are also able to be used for CGI scripting; compiled languages like C++, Visual Basic, and Java can also be used like this. All Perl interpreters, ooRexx, PHP, and more recent versions of VBScript and JScript can use sockets for TCP/IP and usually UDP and other protocols for this.

Version history[edit]

Windows version Shipped with WSH version Last redistributable version
Windows 95 None (separate redistributable) 5.6
Windows NT 4.0 None (separate redistributable) 5.6
Windows NT Server 4.0 None (separate redistributable) 5.6
Windows CE 3.0 1.0 (optional install on installer disc) 2.0
Windows 98 1.0 5.6
Windows 98 Second Edition 1.0 5.6
Windows 2000 2.0 (also termed WSH 5.1) 5.7
Windows 2000 Server 2.0 (also termed WSH 5.1) 5.7
Windows 2000 SP3, SP4 and SP5 5.6 5.7
Windows Me 2.0 (also termed WSH 5.1) 5.6
Windows XP 5.6 5.7
Windows XP SP3 5.7 Not applicable
Windows Server 2003 5.6 5.7
Windows Vista 5.7 Not applicable
Windows Server 2008 5.7 Not applicable
Windows 7 5.8 Not applicable
Windows Server 2008 R2 5.8 Not applicable
Windows 8 5.8 Not applicable
Windows Server 2012 5.8 Not applicable
Windows 10 5.812 Not applicable
Windows Server 2016 5.812 Not applicable

The redistributable version of WSH version 5.6 can be installed on Windows 95/98/Me and Windows NT 4.0/2000. WSH 5.7 is downloadable for Windows 2000, Windows XP and Windows Server 2003. Recently[when?], redistributable versions for older operating systems (Windows 9x and Windows NT 4.0) are no longer available from the Microsoft Download Center.

Since Windows XP Service Pack 3, release 5.7 is not needed as it is included, with newer revisions being included in newer versions of Windows since.

See also[edit]

  • JScript .NET

References[edit]

  1. ^ ?MSDN, «Windows Scripting Host» and «VBScript»
  2. ^ MSDN April 2000 edition, «Windows Scripting Host»
  3. ^ The VBScript Bible (1999)
  4. ^ Windows 2000 Server Resource Kit (documentation
  5. ^ a b «What Is WSH?». msdn.microsoft.com. Archived from the original on 7 January 2018. Retrieved 30 April 2018.
  6. ^ «Windows Script Host Basics». msdn.microsoft.com. Archived from the original on 8 August 2017. Retrieved 30 April 2018.
  7. ^ «Windows Script Host Object Model». msdn.microsoft.com. Archived from the original on 8 August 2017. Retrieved 30 April 2018.
  8. ^ MSDN «VBA»
  9. ^ User’s Manual, Paint Shop Pro 8
  10. ^ Paint Shop Pro 8 help, «Automation»
  11. ^ main help file, Passport for Windows
  12. ^ Take Command documentation 18.00 documentation hard copy and Help file
  13. ^ Zoc v 6.0 help
  14. ^ Zoc 5.0 printed manual
  15. ^ MSDN documentation
  16. ^ Windows Office 97 & 2000 Bibles (Wiley)
  17. ^ Take Command version 18.00 documentation
  18. ^ JP Software Take Command-4NT-4Dos-4OS/2 site, bulletin board
  19. ^ Take Command 18.00 help
  20. ^ «Norman — Antivirus & Security Software for Home & Business». AVG.com. Archived from the original on 21 February 2006. Retrieved 30 April 2018.
  21. ^ LLC), Tara Meyer (Aquent. «Providing a Secure eXPerience». msdn.microsoft.com. Archived from the original on 10 November 2017. Retrieved 30 April 2018.
  22. ^ Windows Script Host 5.6 Boasts Windows XP Integration, Security, New Object Model Archived 2008-02-18 at the Wayback Machine
  23. ^ CasioCalc.com, msgs of 15.09.2016
  24. ^ «Notes/Domino 4 and 5 Forum : RE: Suggestion: Make LotusScript a script engine for Windows Scripting Host». Archived from the original on 2015-03-21. Retrieved 2015-03-12.
  25. ^ ASCI html help file
  26. ^ ASCI site

External links[edit]

  • Windows Script Host
  • Windows Script Host Reference on microsoft.com

Следующим
шагом в развитии средств и технологий
автоматизации в ОС Windows стало появление
сервера сценариев Windows Script Host (WSH). Этот
инструмент разработан для всех версий
Windows и позволяет непосредственно в ОС
выполнять сценарии на полноценных
языках сценариев (по умолчанию, VBScript и
JScript), которые до этого были доступны
только внутри HTML-страниц и работали в
контексте безопасности веб-браузера
(в силу этого подобные сценарии, например,
могли не иметь доступа к файловой системе
локального компьютера).

По
сравнению с командными файлами
интерпретатора cmd.exe сценарии WSH имеют
несколько преимуществ.

Во-первых,
VBScript и JScript – это полноценные алгоритмические
языки, имеющие встроенные функции и
методы для обработки символьных строк,
выполнения математических операций,
обработки исключительных ситуаций и
т.д.; кроме того, для написания сценариев
WSH может использоваться любой другой
язык сценариев (например, широко
распространенный в Unix-системах Perl), для
которого установлен соответствующий
модуль поддержки.

Во-вторых,
WSH поддерживает несколько собственных
объектов, свойства и методы которых
позволяют решать некоторые часто
возникающие повседневные задачи
администратора операционной системы:
работа с сетевыми ресурсами, переменными
среды, системным реестром, ярлыками и
специальными папками Windows, запуск и
управление работой других приложений.

В-третьих,
из сценариев WSH можно обращаться к
службам любых приложений-серверов
автоматизации (например, программ из
пакета MS
Office), которые регистрируют в ОС свои
объекты.

Наконец,
сценарии WSH позволяют работать с объектами
информационной модели Windows Management
Instrumentation (WMI), обеспечивающей программный
интерфейс управления всеми компонентами
операционной модели, а также с объектами
службы каталогов Active Directory Service Interface.

Следует
также отметить, что технология WSH
поддерживается в Windows уже довольно
давно, в Интернете (в том числе на сайте
Microsoft) можно найти множество готовых
сценариев.

1.1.3. Командная оболочка Microsoft PowerShell

С
одной стороны функциональности и
гибкости языка оболочки cmd.exe явно
недостаточно, а с другой стороны сценарии
WSH, работающие с объектными моделями
ADSI и WMI, слишком сложны для пользователей
среднего уровня и начинающих
администраторов.

Перед
разработчиками новой оболочки, получившей
название Windows PowerShell, стояли следующие
основные цели:

  • применение командной строки в качестве
    основного интерфейса администрирования;

  • реализация модели ObjectFlow (элементом
    обмена информации является объект);

  • переработка существующих команд, утилит
    и оболочки;

  • интеграция командной строки, объектов
    COM, WMI и .NET;

  • работа с произвольными источниками
    данных в командной строке по принципу
    файловой системы.

Самая
важная идея, заложенная в PowerShell, состоит
в том, что в командной строке вывод
результатов команды представляет собой
не текст (в смысле последовательности
символов), а объект (данные вместе со
свойственными им методами). В силу этого
работать в PowerShell становится проще, чем
в традиционных оболочках, так как не
нужно выполнять никаких манипуляций
по выделению нужной информации из
символьного потока.

Отметим,
что PowerShell одновременно является и
оболочкой командной строки (пользователь
работает в интерактивном режиме) и
средой выполнения сценариев, которые
пишутся на специальном языке PowerShell.

В
целом, оболочка PowerShell намного удобнее
и мощнее своих предшественников (cmd.exe
и WSH), а основным недостатком, сдерживающим
распространение нового инструмента,
является тот факт, что PowerShell работает
не во всех версиях ОС Windows. Оболочкой
можно пользоваться только на версиях
не ниже Windows XP Service Pack 2 с установленным
пакетом .NET Framework 2.0.

Соседние файлы в папке ОС 2013 2к ДО

  • #
  • #
  • #
  • #
  • #
  • #

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

На данном блоге собралось уже достаточно примеров скриптов и обучающих статей, что бы написать действительно качественный обзор по Windows Script Host, да, я такой, люблю публиковать материалы в обратном порядке… По ходу статьи я приведу примеры программного кода для Windows Script Host (коротко — WSH), а пока немного лирического предисловия.

Операционная система изначально создавалась как платформа для программистов, это теперь, мы привыкли, что Windows – это красочный интерфейс пригодный для посиделок в социальных сетях, разговорах по скайпу и игре в компьютерные игры. Но как бы там не было, ОС это как не как программа, а любую программу нужно отлаживать и исправлять в ней ошибки. Это теперь мы привыкли, что есть мышка, а ведь когда то все делали ручками – все команды вводили вручную, и если программисту это не в дикость, то рядовому пользователю такая картина покажется дикостью… Но, хотя времена уже не те, Windows по прежнему позволяет решать административные вопросы без сторонних приложений…

Содержание

  1. Windows Script Host — вначале была командная строка…
  2. И был день, и была ночь, и пришел Windows Script Host
  3. «Привет Мир», или пишем первые примеры по Windows Script Host…

Windows Script Host — вначале была командная строка…

Да, да, черный экран и взгляд в неизвестность… До появления Windows Script Host и PowerShell, командная строка являлась практический единственным средством для решения внештатных задач. Помню в детстве, мне частенько приходилось бегать с загрузочными дискетами и даже держать их в тайнике целыми стопками. Ну, а старый добрый Doom!!! Не знаю как теперь, но он у меня он работал только под управлением командной строки. Помню, в школе на уроках информатики нам приходилось изучать базовые команды CMD, типа, переход по каталогам и дискам, создание папок и файлов и так далее. Даже в нынешнее время приходится использовать базовые утилиты командной оболочки, взять тот же ping или ipconfig, когда я приходил к клиентам, у которых не работал интернет, эти утилиты шли в бой всегда..

Но, времена идут, и продвинутому пользователю хочется чего-то больше…

И был день, и была ночь, и пришел Windows Script Host

Windows Script Host - базовые возможности

В простом варианте, сервер сценариев Windows Script Host – это программа, точнее две: wscript.exe (позволяет запускать сценарии в оконном интерфейсе) и cscript.exe (запуск скриптов в режиме командной строки). Так как Windows Script Host не требует установки и входит в состав практически всех версий Windows, то можно сразу приступать к программированию. У пользователя есть выбор, писать программный код на языке VBScript (файлы с расширением .vbs) или JScript (файлы с расширением .js). Те, кто самые ленивые, могут открыть текстовый блокнот и сразу приступить к делу, но лучше использовать редактор Notepad++. Я даже написал несколько статей по данному редактору, например — «Редактор Notepad++ — Знакомство«.

Оба языка программирования vbscript и jscript являются разработкой компании Майкрософт, их код частично может выполняться в теле интернет страницы, хотя, более эффективней они используются как прикладные сценарии.

Некоторые преимущества сценариев Windows Script Host по сравнению с рядовыми файлами командной оболочки:

  • Расширяемость возможностей за счет подключения внешних объектов. Объекты – это файлы (библиотеки) с набором различных функций для выполнения определенных задач: создание графического интерфейса (WindowSystemObject), работа со ссылками на сайте (Chilkat.Spider) или работа с протоколом HTTP (Компоненты для создания HTTP запроса), однако, Windows Script Host предоставляет и собственные объекты, например, работа с файловой системой (FileSystemObject), или взаимодействие с системой (WScript.Shell).
  • Взаимодействие с Windows Management Instrumentation (Инструментарий управления Windows). WMI содержит практически неограниченные возможность для администрирования системы, с его помощью можно получить доступ практически к каждому элементу (как оборудование, так и системная информация).
  • Универсальность использования. Нет необходимости устанавливать программные пакеты по несколько сотен мегабайт, вы можете написать сценарий и потом запустить его на другом компьютере, да и компиляция отсутствует, что позволяет в любой момент изменить программный код.

«Привет Мир», или пишем первые примеры по Windows Script Host…

Windows Script Host - начинаем программировать

Пожалуй, я не буду нарушать традицию…

Вывод сообщения «Привет Мир» на языке Jscript:

WScript.Echo("Привет Мир");

Вывод сообщения «Привет Мир» на языке VBscript:

Как видим все довольно просто, но… хочется чего-то большего, поэтому приведу вам пример сценариев Windows Script Host, которые будут выводить список имен пользователей системы и их SID (уникальный идентификатор, который назначается каждой учетной записи):

Программный код на языке VBSCRIPT:

'-------------------------------------------------------------------------------------' Примеры программного кода для сервера Windows Script Host' Список имен пользователей и их SID' windows_script_host_UserSID.vbs'------------------------------------------------------------------------------------- ' включаем проверку переменныхOptionExplicit dim objWMIService, colItems, objItem, list list = "Имя пользователя и его SID" & vbCrLf & vbCrLf' получаем доступ к WMISet objWMIService = GetObject("winmgmts:.rootcimv2")' получаем доступ к классу WMI - Win32_UserAccountSet colItems = objWMIService.ExecQuery("SELECT * FROM Win32_UserAccount"' начинаем перебор значенийForEach objItem In colItems list = list &"Имя" & vbTab & vbTab & objItem.Name & vbCrLf list = list &"Значение SID" & vbTab & objItem.SID & vbCrLf & vbCrLfNext ShowInNotepad(list) 'Процедура создания временного файла с даннымиSub ShowInNotepad(StrToFile)dim FSO, TempPath, TxtFileSet FSO = CreateObject("Scripting.FileSystemObject")TempPath = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%TEMP%") & "" & FSO.GetTempNameSet TxtFile = FSO.CreateTextFile(TempPath)TxtFile.WriteLine(StrToFile)TxtFile.CloseCreateObject("WScript.Shell").Run "wordpad.exe " & TempPathEndSub

Программный код на языке JSCRIPT:

//-------------------------------------------------------------------------------------// Примеры программного кода для сервера Windows Script Host// Список имен пользователей и их SID// windows_script_host_UserSID.js//------------------------------------------------------------------------------------- var objWMIService1, colItems1, objItem1, list1; list1 ="Имя пользователя и его SIDnn";// получаем доступ к WMIobjWMIService1 = GetObject("winmgmts:.rootcimv2");// получаем доступ к классу WMI - Win32_UserAccountcolItems1 =new Enumerator(objWMIService1.ExecQuery("SELECT * FROM Win32_UserAccount")); // начинаем перебор значенийfor(;!colItems1.atEnd(); colItems1.moveNext()){ objItem1 = colItems1.item();  list1 +="Имяtt"+ objItem1.Name+"n"; list1 +="Значение SIDt"+ objItem1.SID+"nn";} ShowInNotepad(list1) //Функцияя создания временного файла с даннымиfunction ShowInNotepad(StrToFile){var FSO, TempPath, TxtFile; with(WScript){ FSO = CreateObject("Scripting.FileSystemObject"); TempPath = CreateObject("WScript.Shell").ExpandEnvironmentStrings("%TEMP%")+""+ FSO.GetTempName(); TxtFile = FSO.CreateTextFile(TempPath); TxtFile.WriteLine(StrToFile); TxtFile.Close(); CreateObject("WScript.Shell").Run("wordpad.exe "+ TempPath);}}

Как видим, не все так сложно, как бы казалось, кстати, данный пример я взял из книги Windows Script Host – новичок, там я собрал 132 примера сценариев на обоих языках. Я стараюсь всегда приводить программный код как на языке VBScript так и на языке Jscript, что бы можно было провести сравнительный анализ.

Хорошо, теперь придерживаясь этикета, давайте разберем программный код примеров.

Логика работы идентична, вначале происходит объявление переменных (ключевые слова dim и var). Видим, что имена переменных практически одинаковые, смотрите «Урок 2 по JScript — типы данных и переменные» и «Урок 2 по VBScript: Переменные«. Обратите внимание, что в отличии от прикладных языков программирования, в скриптах Windows Script Host не нужно указывать тип данных.

Переменная list будех хранить основную информацию относительно имени и значении SID. Мы присваиваем переменной сначала информативную фразу и добавляем дважды перевод строки (n и vbCrLf). Далее с помощью функции CreateObject происходит подключение внешних классов WMI, которые и позволят выполнить поставленную задачу.

Далее нам надо обработать все найденные идентификаторы. Для этих целей мы применили цикл FOR и FOR EACH – смотрите статьи «Урок 6 по VBScript: Циклы for…next и for each…next» и «Урок 9 по JScript — оператор цикла for«. Все найденные результат будут записываться в переменную. Обратите внимание, что для объедения строк мы использовали Windows Script Host операторы «&» и «+».

В самом конце происходит вызов пользовательской процедуры (функции) ShowInNotepad, принципы создания пользовательских процедур и функций смотрите в статье «Урок 3 по JScript — создание пользовательских функций JS«. В результате, будет открыто приложение WordPad.exe, в котором будут содержаться имена идентификаторов и их значений.

Понравилась статья? Поделить с друзьями:
  • Яркое поздравление с днем рождения подруге
  • Сервис макрос редактор сценариев
  • Яркое поздравление с днем рождения девушке
  • Сервировка стола на праздник осени
  • Яркое видео поздравление с днем рождения мужчине