- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Windows Script Host для Windows 2000/XP - Андрей Попов
Шрифт:
Интервал:
Закладка:
В РРјСЏ: strict.wsf
В РљРѕРґРёСЂРѕРІРєР°: Windows
 Описание: Пример строгого режима обработки WS-файла
В </description>
В </runtime>
В <script language="JScript">
В <![CDATA[
  WScript.Echo("Всем привет!");
В ]]>
В </script>
</job>
Несколько заданий РІ РѕРґРЅРѕРј файлеВ
Каждое отдельное задание в WS-файле должно находиться внутри элементов <job> и </job>. В свою очередь, все элементы <job> являются дочерними элементами контейнера <package>.
В качестве примера рассмотрим сценарий multijob.wsf, приведенный в листинге 3.9. Здесь описываются два задания с идентификаторами "VBS" (сценарий на языке VBScript) и "JS" (сценарий на языке JScript).
Листинг 3.9. Файл multijob.wsf<package>
В <job id="VBS">
 <!-- Описываем первое задание (id="VBS") -->
В <runtime>
В В <description>
В В РРјСЏ: multijob.wsf
В В РљРѕРґРёСЂРѕРІРєР°: Windows
  Описание: Первое задание из example.wsf
В В </description>
В </runtime>
В <script language="VBScript">
  WScript.Echo "Первое задание (VBScript)"
В </script>
В </job>
В <job id="JS">
 <!-- Описываем второе задание (id="JS") -->
В <runtime>
В В <description>
В В РРјСЏ: example.wsf
В В РљРѕРґРёСЂРѕРІРєР°: Windows
  Описание: Второе задание из example.wsf
В В </description>
В </runtime>
В <script language="JScript">
  WScript.Echo("Второе задание (JScript)");
В </script>
В </job>
</package>
Для того чтобы выполнить первое задание сценария multijob.wsf, которое выведет на экран строку "Первое задание (VBScript)", нужно выполнить одну из следующих команд:
cscript //job:"VBS" multijob.wsf
cscript multijob.wsf
wscript //job:"VBS" multijob.wsf
wscript multijob.wsf
Для запуска второго задания, выводящего на экран строку "Второе задание (JScript)", нужно явно указывать идентификатор этого задания, поэтому используется одна из двух команд:
cscript //job:"JS" multijob.wsf
wscript //job:"JS" multijob.wsfВ
Рспользование констант внешних объектов
Для того чтобы в сценарии обращаться по имени к константам, определенным во внешних объектах, не создавая экземпляров самих объектов, необходимо сначала получить ссылку на эти объекты с помощью элемента <reference>.
В листинге 3.10 приведен сценарий refer.wsf, в котором с помощью элемента <reference> производится доступ к трем константам объекта FileSystemObject (ForReading, ForWriting и ForAppending), которые определяют режим работы из сценария с внешним текстовым файлом.
Листинг 3.10. Рспользование РІ сценарии констант внешних объектов (файл refer.wsf)<job id="Example">
В <runtime>
В <description>
В РРјСЏ: refer.wsf
В РљРѕРґРёСЂРѕРІРєР°: Windows
 Описание: Рспользование констант внешних объектов
В </description>
В </runtime>
 <!-- Получаем ссылку на объект FileSystemObject -->
В <reference object="Scripting.FileSystemObject"/>
В <script language="JScript">
В var s;
 s="Значения констант объекта FileSystemObject:nn";
 //Получаем значение константы ForReading
В s+="ForReading="+ForReading+"n";
 //Получаем значение константы ForWriting
В s+="ForWriting="+ForWriting+"n";
 //Получаем значение константы ForAppending
В s+="ForAppending="+ForAppending;
 //Выводим полученные строки на экран
В WScript.Echo(s);
В </script>
</job>
В результате выполнения сценария refer.wsf на экран выведется диалоговое окно с информацией о значениях констант объекта FileSystemObject (рис. 3.8).
Р РёСЃ. 3.8. Результат работы сценария refer.wsfВ
Подключение внешних файлов
К WS-файлу можно подключать "обычные" JScript- или VBScript-сценарии, которые находятся во внешних файлах. Для этого нужно указать путь к этому внешнему файлу в атрибуте src элемента <script>.
Для примера создадим файл inc.js, в который запишем строку
WScript.Echo("Здесь выполняется сценарий inc.js");
и файл main.wsf, содержание которого приведено в листинге 3.11.
Листинг 3.11. Подключение внешнего сценария (файл main wsf)<job id="Example">
В <runtime>
В <description>
В РРјСЏ: main.wsf
В РљРѕРґРёСЂРѕРІРєР°: Windows
 Описание: Подключение сценария, находящегося во внешнем файле
В </description>
В </runtime>
 <!-- Подключаем сценарий из файла inc.js -->
В <script language="JScript" src="inc.js"/>
 <!-- Определяем основной сценарий -->
В <script language="JScript">
 WScript.Echo("Здесь выполняется основной сценарий");
В </script>
</job>
Если запустить main.wsf с помощью cscript.exe, то на экран выведутся две строки:
Здесь выполняется сценарий inc.js
Здесь выполняется основной сценарий
Два языка внутри одного задания (использование функции InputBox языка VBScript в сценариях JScript)
Как уже отмечалось в главе 2, ни в WSH, ни в JScript нет метода или функции, которые позволяли бы в графическом режиме создать диалоговое окно для ввода текста. Однако в языке VBScript имеется функция InputBox, предназначенная как раз для этой цели; используя разметку XML, мы можем легко использовать эту функцию в сценариях JScript. Соответствующий пример приведен в сценарии multilang.wsf (листинг 3.12).
Сначала в этом сценарии на языке VBScript описывается функция InputName, которая возвращает строку, введенную с помощью функции InputBox:

