Сервер сценариев WSH. Языки сценариев BScript и JScript

Содержание

Слайд 2

Введение

Был рассмотрен язык командных файлов (язык командной оболочки), который в качестве инструмента

Введение Был рассмотрен язык командных файлов (язык командной оболочки), который в качестве
для автоматизации работы поддерживается во всех версиях Windows. Однако с помощью командного интерпретатора cmd.exe трудно написать какую-либо сложную программу-сценарий (script): отсутствует полноценная интерактивность, нельзя напрямую работать с рабочим столом Windows и системным реестром и т. д.
Для исправления этой ситуации компанией Microsoft был разработан сервер сценариев Windows Script Host (WSH), с помощью которого можно выполнять сценарии, написанные, в принципе, на любом языке (при условии, что для этого языка установлен соответствующий модуль (scripting engine), поддерживающий технологию ActiveX Scripting). В качестве стандартных языков поддерживаются Visual Basic Script Edition (VBScript) и JScript.
Вообще говоря, принцип работы сценариев, поддерживаемых WSH, состоит в использовании объектов ActiveX

Слайд 3

Введение

Сервер сценариев WSH является мощным инструментом, предоставляющим единый интерфейс (объектную модель) для

Введение Сервер сценариев WSH является мощным инструментом, предоставляющим единый интерфейс (объектную модель)
специализированных языков (VBScript, JScript, PerlScript, REXX, TCL, Python и т. п.), которые, в свою очередь, позволяют использовать любые внешние объекты ActiveX. С помощью WSH сценарии могут быть выполнены непосредственно в операционной системе Windows, без встраивания в HTML-страницы.

Слайд 4

Назначение WSH

 Некоторые задачи, для автоматизации которых прекрасно подходят сценарии WSH.
Организация резервного копирования

Назначение WSH Некоторые задачи, для автоматизации которых прекрасно подходят сценарии WSH. Организация
на сетевой сервер файлов с локальной машины, которые отбираются по какому-либо критерию.
Быстрое изменение конфигурации рабочего стола Windows в зависимости от задач, выполняемых пользователем.
Автоматический запуск программ Microsoft Office, создание там сложных составных документов, распечатка этих документов и закрытие приложений.
Управление работой приложений, не являющихся серверами автоматизации, с помощью посылки в эти приложения нажатий клавиш.
Подключение и отключение сетевых ресурсов (дисков и принтеров).
Создание сложных сценариев регистрации для пользователей.
Выполнение задач администрирования локальной сети (например, добавление или удаление пользователей).

Слайд 5

Запуск скрипта

Консольный режим
cscript имя_файла
Оконный режим
wscript имя_файла

Запуск скрипта Консольный режим cscript имя_файла Оконный режим wscript имя_файла

Слайд 6

VBScript vs Jscript!

VBScript vs Jscript!

Слайд 7

Внутренние объекты WSH

С помощью внутренних объектов WSH из сценариев можно выполнять следующие

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

Слайд 8

Внутренние объекты WSH

WScript. Это главный объект WSH, который служит для создания других

Внутренние объекты WSH WScript. Это главный объект WSH, который служит для создания
объектов или связи с ними, содержит сведения о сервере сценариев, а также позволяет вводить данные с клавиатуры и выводить информацию на экран или в окно Windows.
WshArguments. Обеспечивает доступ ко всем параметрам командной строки запущенного сценария или ярлыка Windows.
WshNamed. Обеспечивает доступ к именным параметрам командной строки запущенного сценария.
WshUnnamed. Обеспечивает доступ к безымянным параметрам командной строки запущенного сценария.
WshShell. Позволяет запускать независимые процессы, создавать ярлыки, работать с переменными среды, системным реестром и специальными папками Windows.
WshSpecialFolders. Обеспечивает доступ к специальным папкам Windows.
WshShortcut. Позволяет работать с ярлыками Windows.
WshUrlShortcut. Предназначен для работы с ярлыками сетевых ресурсов.

Слайд 9

Внутренние объекты WSH

WshEnvironment. Предназначен для просмотра, изменения и удаления переменных среды.
WshNetwork. Используется

Внутренние объекты WSH WshEnvironment. Предназначен для просмотра, изменения и удаления переменных среды.
при работе с локальной сетью: содержит сетевую информацию для локального компьютера, позволяет подключать сетевые диски и принтеры.
WshScriptExec. Позволяет запускать консольные приложения в качестве дочерних процессов, обеспечивает контроль состояния этих приложений и доступ к их стандартным входным и выходным потокам.
WshController. Позволяет запускать сценарии на удаленных машинах.
WshRemote. Позволяет управлять сценарием, запущенным на удаленной машине.
WshRemoteError. Используется для получения информации об ошибке, возникшей в результате выполнения сценария, запущенного на удаленной машине.

Слайд 10

Объект WScript

Свойства объекта WScript позволяют получить полный путь к использующемуся серверу сценариев (wscript.exe или

Объект WScript Свойства объекта WScript позволяют получить полный путь к использующемуся серверу
cscript.exe), параметры командной строки, с которыми запущен сценарий, режим его работы (интерактивный или пакетный). Кроме этого, с помощью свойств объекта WScript можно выводить информацию в стандартный выходной поток и читать данные из стандартного входного потока. Также WScript предоставляет методы для работы внутри сценария с объектами автоматизации и вывода информации на экран (в текстовом режиме) или в окно Windows.
Отметим, что в сценарии WSH объект WScript можно использовать сразу, без какого-либо предварительного описания или создания, так как его экземпляр создается сервером сценариев автоматически. Для использования же всех остальных объектов нужно использовать либо метод CreateObject, либо определенное свойство другого объекта.

Слайд 11

Методы объекта WScript

Методы объекта WScript

Слайд 12

Метод CreateObject

Строковый параметр strProgID, указываемый в методе CreateObject, называется программным идентификатором объекта (Programmic Identifier,

Метод CreateObject Строковый параметр strProgID, указываемый в методе CreateObject, называется программным идентификатором
ProgID).
Если указан необязательный параметр strPrefix, то после создания объекта в сценарии можно обрабатывать события, возникающие в этом объекте (естественно, если объект предоставляет интерфейсы для связи с этими событиями). Когда объект сообщает о возникновении определенного события, сервер сценариев вызывает функцию, имя которой состоит из префикса strPrefix и имени этого события. Например, если в качестве strPrefix указано "MYOBJ_", а объект сообщает о возникновении события "OnBegin," то будет запущена функция "MYOBJ_OnBegin", которая должна быть описана в сценарии.
В примере метод CreateObject используется для создания объекта WshNetwork:
var WshNetwork = WScript.CreateObject("WScript.Network");

Слайд 13

Объект WshShell

С помощью объекта WshShell можно
запускать новый процесс
создавать ярлыки
работать с системным реестром
получать доступ

Объект WshShell С помощью объекта WshShell можно запускать новый процесс создавать ярлыки
к переменным среды и специальным папкам Windows.
Создается этот объект следующим образом:
var WshShell=WScript.CreateObject("WScript.Shell");

Слайд 16

Объекты для основных операций с файловой системой

Для работы с файловой системой из сценариев

Объекты для основных операций с файловой системой Для работы с файловой системой
WSH предназначены восемь объектов, главным из которых является FileSystemObject. С помощью методов объекта FileSystemObject можно выполнять следующие основные действия:
копировать или перемещать файлы и каталоги;
удалять файлы и каталоги;
создавать каталоги;
создавать или открывать текстовые файлы;
создавать объекты Drive, Folder и File для доступа к конкретному диску, каталогу или файлу соответственно.
С помощью свойств объектов Drive, Folder и File можно получить детальную информацию о тех элементах файловой системы, с которыми они ассоциированы. Объекты Folder и File также предоставляют методы для манипулирования файлами и каталогами (создание, удаление, копирование, перемещение); эти методы в основном копируют соответствующие методы объекта FileSystemObject