Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

В следующем примере метод

CreateObject
используется для создания объекта
WshNetwork
:

var WshNetwork = WScript.Createobject("WScript.Network");

Отметим, что объекты автоматизации из сценариев можно создавать и без помощи WSH. В JScript для этого используется объект

ActiveXObject
, например:

var WshNetwork = new ActiveXObject("WScript.Network");

В VBscript для создания объектов может использоваться специальная функция

CreateObject
, например:

Set WshNetwork = CreateObject("WScript.Network")

Однако

организовать в сценарии обработку событий создаваемого объекта можно только при использовании метода
WScript.CreateObject
.

Метод ConnectObject

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

ConnectObject
, должен предоставлять интерфейс к своим событиям.

В следующем примере в переменной

MyObject
создается абстрактный объект "
SomeObject
", затем из сценария вызывается метод
SomeMetod
этого объекта. После этого устанавливается связь с переменной
MyObject
и задается префикс "
MyEvent
" для процедур обработки события этого объекта. Если в объекте возникнет событие с именем "
Event
", то будет вызвана функция
MyEvent_Event
. Метод
DisconnectObject
объекта
WScript
производит отсоединение объекта
MyObject
.

var MyObject = WScript.CreateObject("SomeObject");

MyObject.SomeMethod;

WScript.ConnectObject(MyObject, "MyEvent");

function MyEvent_Event(strName) {

 WScript.Echo(strName);

}

WScript.DisconnectObject(MyObject);

Метод DisconnectObject

Если соединения с объектом

obj
не было установлено, то метод
DisconnectObject(obj)
не будет производить никаких действий. Пример применения
DisconnectObject
был приведен выше.

Метод Echo

Параметры

Arg1
,
Arg2
задают аргументы для вывода. Если сценарий был запущен с помощью wscript.exe, то метод
Echo
направляет вывод в диалоговое окно, если же для выполнения сценария применяется cscript.exe, то вывод будет направлен на экран (консоль). Каждый из аргументов при выводе будет разделен пробелом. В случае использования cscript.exe вывод всех аргументов будет завершен символом новой строки. Если в методе Echo не задан ни один аргумент, то будет напечатана пустая строка.

Например, после выполнения сценария EchoExample.js (листинг 1.3) с помощью cscript.exe на экран будут выведены пустая строка, три числа и строка текста (рис. 1.10).

Листинг 1.3. Сценарий EchoExample.js

/*******************************************************************/

/* Имя: EchoExample.js */

/*
Язык: JScript */

/* Описание: Использование метода WScript.Echo */

/*******************************************************************/

WScript.Echo; //Выводим пустую строку

WScript.Echo(1,2,3); //Выводим числа

WScript.Echo("Привет!"); //Выводим строку

/************* Конец *********************************************/

Рис. 1.10. Вывод информации с помощью метода Echo

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

Echo
приведены в главе 2 (см. листинги 2.1, 2.2, 2.4 и 2.5).

Метод Sleep

В следующем примере сценарий переводится в неактивное состояние на 5 секунд:

WScript.Echo("Сценарий запущен, отдыхаем...");

WScript.Sleep(5000);

WScript.Echo("Выполнение завершено");

Метод

Sleep
необходимо применять при асинхронной работе сценария и какой-либо другой задачи, например, при имитации нажатий клавиш в активном окне с помощью метода
WshShell.SendKeys
(см. листинги 1.13, 2.31, 2.32).

Объекты-коллекции

В WSH входят объекты, с помощью которых можно получить доступ к коллекциям, содержащим следующие элементы:

параметры командной строки запущенного сценария или ярлыка Windows (объекты

WshArguments
,
WshNamed
и
WshUnnamed
);

значения переменных среды (объект

WshEnvironment
);

пути к специальным папкам Windows (объект

WshSpecialFolders
).

Объект WshArguments

Объект

WshArguments
содержит коллекцию всех параметров командной строки запущенного сценария или ярлыка Windows. Этот объект можно создать только с помощью свойства
Arguments
объектов
WScript
и
WshShortcut
.

В принципе, работать с элементами коллекции

WshArguments
можно стандартным для JScript образом — создать объект
Enumerator
и использовать его методы
moveNext
,
item
и
atEnd
. Например, вывести на экран все параметры командной строки, с которыми запущен сценарий, можно следующим образом (листинг 1.4).

Листинг 1.4. Вывод всех параметров сценария (стандартные коллекции JScript)

/********************************************************************/

/* Имя: EnumArgs.js */

/* Язык: JScript */

/* Описание: Вывод на экран параметров запущенного сценария */

/********************************************************************/

Поделиться:
Популярные книги

Двести лет вместе. Часть I. В дореволюционной России

Солженицын Александр Исаевич
Документальная литература:
публицистика
5.00
рейтинг книги
Двести лет вместе. Часть I. В дореволюционной России

Воронцов. Перезагрузка. Книга 5

Тарасов Ник
5. Воронцов. Перезагрузка
Фантастика:
попаданцы
альтернативная история
фэнтези
фантастика: прочее
6.20
рейтинг книги
Воронцов. Перезагрузка. Книга 5

Князь Андер Арес 2

Грехов Тимофей
2. Андер Арес
Фантастика:
рпг
аниме
фэнтези
фантастика: прочее
5.40
рейтинг книги
Князь Андер Арес 2

Убитый манекен : сборник

Стееман Станислас-Андре
Детективы:
классические детективы
маньяки
юридический триллер
6.80
рейтинг книги
Убитый манекен : сборник

Том 6. Дураки на периферии

Платонов Андрей Платонович
6. Собрание сочинений
Поэзия:
драматургия
5.00
рейтинг книги
Том 6. Дураки на периферии

Газлайтер. Том 1

Володин Григорий Григорьевич
1. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 1

Медиатор

Листратов Валерий
11. Ушедший Род
Фантастика:
боевая фантастика
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Медиатор

Дорога в рай (Рассказы)

Даль Роальд
Интеллектуальный бестселлер. Читает весь мир.
Проза:
современная проза
7.29
рейтинг книги
Дорога в рай (Рассказы)

Я есть Закон! Том 2

Деев Денис
2. Я есть Закон!
Фантастика:
юмористическая фантастика
рпг
попаданцы
5.00
рейтинг книги
Я есть Закон! Том 2

История религии (Том 1)

Мень Александр Владимирович
Религия и эзотерика:
религия
6.25
рейтинг книги
История религии (Том 1)

Дважды одаренный. Том IV

Тарс Элиан
4. Дважды одаренный
Фантастика:
городское фэнтези
альтернативная история
аниме
7.50
рейтинг книги
Дважды одаренный. Том IV

Матабар IX

Клеванский Кирилл Сергеевич
9. Матабар
Проза:
магический реализм
5.00
рейтинг книги
Матабар IX

Житейская правда разведки

Антонов Владимир Сергеевич
Гриф секретности снят
Научно-образовательная:
история
cпецслужбы
военная история
6.25
рейтинг книги
Житейская правда разведки

Прапорщик. Назад в СССР. Книга 6

Гаусс Максим
6. Второй шанс
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Прапорщик. Назад в СССР. Книга 6