Андрей Попов - Windows Script Host для Windows 2000/XP
cscript //Р’ C:ScriptFirst.js /Р° /b
запустит сценарий First.js в пакетном режиме, при этом /а и /b будут являться параметрами этого сценария, а //B — параметром приложения cscript.exe.
Рис. 1.7. Результат выполнения First.js в консольном режиме без информации о версии WSH
Свойства и параметры сценариев, выполняемых с помощью wscript.exe
При использовании для запуска модуля wscript.exe свойства сценария можно устанавливать с помощью вкладки Сценарий (Script) диалогового окна, задающего свойства файла в Windows (рис. 1.8).
После задания свойств сценария автоматически создается файл с именем этого сценария и расширением wsh, который имеет структуру наподобие ini-файла, например:
[ScriptFile]
Path=C:ScriptFirst.js
[Options]
Timeout=0
DisplayLogo=1
Если дважды щелкнуть в Проводнике Windows по wsh-файлу или запустить такой файл из командной строки, то соответствующий сервер сценариев (wscript.exe или cscript.exe) запустит сценарий, которому соответствует wsh- файл, с заданными в секции Options параметрами.
ЗамечаниеВЕсли wsh-С„aР№Р» РЅРµ запускается, нужно проверить наличие РЅР° РґРёСЃРєРµ файла, указанного РІ секции ScriptFile.
Рис. 1.8. Установка свойств сценария First.js
При запуске сценариев с помощью wscript.exe для задания параметров командной строки сценария можно использовать технологию drag-and-drop — если выделить в Проводнике Windows несколько файлов и перетащить их на ярлык сценария, то этот сценарий запустится, а имена выделенных файлов передадутся ему в качестве параметров.
Стандартные объекты WSH5.6
Перейдем теперь к описанию собственной объектной модели WSH 5.6. С помощью внутренних объектов этой версии WSH из сценариев можно выполнять следующие основные задачи:
□ выводить информацию в стандартный выходной поток (на экран) или в диалоговое окно Windows;
□ читать данные из стандартного входного потока (т. е. вводить данные с клавиатуры) или использовать информацию, выводимую другой командой;
□ использовать свойства и методы внешних объектов, а также обрабатывать события, которые генерируются этими объектами;
□ запускать новые независимые процессы или активизировать уже имеющиеся;
□ запускать дочерние процессы с возможностью контроля их состояния и доступа к их стандартным входным и выходным потокам;
□ работать с локальной сетью: определять имя зарегистрировавшегося пользователя, подключать сетевые диски и принтеры;
□ просматривать и изменять переменные среды;
□ получать доступ к специальным папкам Windows;
□ создавать ярлыки Windows;
□ работать с системным реестром.
В WSH 5.6 входят перечисленные ниже объекты:
в–ЎВ WScript. Рто главный объект WSH, который служит для создания РґСЂСѓРіРёС… объектов или СЃРІСЏР·Рё СЃ РЅРёРјРё, содержит сведения Рѕ сервере сценариев, Р° также позволяет вводить данные СЃ клавиатуры Рё выводить информацию РЅР° экран или РІ РѕРєРЅРѕ Windows.
□ WshArguments. Обеспечивает доступ ко всем параметрам командной строки запущенного сценария или ярлыка Windows.
□ WshNamed. Обеспечивает доступ к именным параметрам командной строки запущенного сценария.
□ WshUnnamed. Обеспечивает доступ к безымянным параметрам командной строки запущенного сценария.
□ WshShell. Позволяет запускать независимые процессы, создавать ярлыки, работать с переменными среды, системным реестром и специальными папками Windows.
□ WshSpecialFolders. Обеспечивает доступ к специальным папкам Windows.
□ WshShortcut. Позволяет работать с ярлыками Windows.
□ WshUrlShortcut. Предназначен для работы с ярлыками сетевых ресурсов.
□ WshEnvironment. Предназначен для просмотра, изменения и удаления переменных среды.
в–Ў WshNetwork. Рспользуется РїСЂРё работе СЃ локальной сетью: содержит сетевую информацию для локального компьютера, позволяет подключать сетевые РґРёСЃРєРё Рё принтеры.
□ WshScriptExec. Позволяет запускать консольные приложения в качестве дочерних процессов, обеспечивает контроль состояния этих приложений и доступ к их стандартным входным и выходным потокам.
□ WshController. Позволяет запускать сценарии на удаленных машинах.
□ WshRemote. Позволяет управлять сценарием, запущенным на удаленной машине.
в–Ў WshRemoteError. Рспользуется для получения информации РѕР± ошибке, возникшей РІ результате выполнения сценария, запущенного РЅР° удаленной машине.
Кроме этого, имеется объект FileSystemObject, обеспечивающий доступ к файловой системе компьютера (этот объект будет подробно описан в главе 5).
Перейдем теперь к рассмотрению свойств и методов внутренних объектов WSH.
ЗамечаниеПримеры всех сценариев, приведенных далее в этой главе, написаны на JScript. Так как эти сценарии только иллюстрируют свойства и методы WSH и не используют особенностей, характерных только для JScript, перевод их на VBScript не представляет никакого труда.