Приветствую всех пользователей блога scriptcoding.ru. В этой статье мы рассмотрим основные свойства – их восемь и методы – sleep, quit и echo объекта WScript.
Данный объект является главным, он загружается автоматически и позволяет подключать остальные компоненты объектной модели Windows Script Host: как внутренние, так и внешние. Я решил не рассматривать все его методы и свойства, так как некоторые из них требуют отдельной статьи. Тут мы рассмотрим восемь основных свойств – их стоит знать, так как они позволяют получить информацию, как о самом сценарии, так и о сервере Windows Script Host в целом. Основные WScript методы – quit,sleep и echo, позволяют производить выход из сценария, задавать задержку и выводить данные.
И так, давайте рассмотрим все подробно.
Свойства
Name – Как правило, данное свойство содержит строку «Сервер сценариев Windows«.
FullName – Содержит полный путь к исполняемому файлу, который обрабатывает текущий сценарий, например, wscript_exe или cscript_exe.
ScriptName – Имя текущего сценария.
ScriptFullNmae – Полный путь к текущему скрипту.
Path – Путь к системному каталогу.
Version – Собственно, версия сервера Windows Script Host.
Timeout – Свойство доступно как для чтения, так и для записи. Определяет время в секундах, через которое сценарий должен завершить работу. По умолчанию значение ровно 0.
BuildVersion – Содержит номер сборки сервера сценариев Windows Script Host.
Методы
Quit(code) – Текущий метод производит выход из сценария с кодом, который задан параметром code, если код выхода не задан, он устанавливается в ноль. Стоит помнить, что как только будет выполнена последняя строка кода в скрипте, он автоматически завершит свою работу.
Sleep(time) – Позволяет задать задержку в миллисекундах.
Echo(str1, str2,… ) – Пожалуй, самый простой оператор вывода данных. Ему можно передавать как строковые параметры, заключенные в кавычки, так и имена переменных.
И так, с теоретической частью мы закончили, теперь можно приступить к программированию. Для начала рассмотрим такой пример на языке vbscript:
' *********************************************************** ' Класс Wscript методы и свойства ' wscript echo, wscript sleep и wscript quit ' wscript_obj.vbs ' *********************************************************** Option Explicit Dim Msg Msg = "Свойства класса_WScript" & vbCrLf & vbCrLf With WScript Msg = Msg & "Name: " & .Name & vbCrLf & "FullName: " & .FullName & vbCrLf Msg = Msg & "ScriptName: " & .ScriptName & vbCrLf & "ScriptFullName: " & .ScriptFullName & vbCrLf Msg = Msg & "Path: " & .Path & vbCrLf & "Version: " & .Version & vbCrLf Msg = Msg & "Application: " & .Application & vbCrLf & "Timeout: " & .Timeout & vbCrLf & "BuildVersion: " & .BuildVersion 'используем функцию Wscript Echo для вывода данных .Echo Msg 'Создаем задержку в 2000 миллисекунд с помощью Wscript Sleep .Sleep 2000 'устанавливаем время выхода через 2 секунды .Timeout = 2 .Echo "Это окно закроется через 2 секунды" ' Wscript Quit - завершение работы .Quit End With |
Давайте подробно рассмотрим программный код скрипта. В данном примере мы сначала составляем список свойств, который будет храниться в переменной Msg. Вывод списка осуществляется с помощью функции Wscript Echo. Потом происходит вызов метода Wscript Sleep со значением параметра в 2000 миллисекунд. Сразу после этого мы присваиваем свойству Timeout значение 2 – количество секунд, через которое сценарий прекратит работу. И в конце идет снова вывод диалогового окна с помощью метода Wscript Echo. Как только диалоговое окно появится, и, если мы не нажмем на кнопку, то оно автоматически закроется через 2 секунды благодаря строке WScript Quit. Обратите внимание, что бы не писать лишний раз имя объекта, мы использовали конструкцию With… End With, тем самым нам достаточно указать имена свойств и методов.
А вот аналогичный пример, но уже на языке JScript:
// *********************************************************** // Класс Wscript методы и свойства // wscript echo, wscript sleep и wscript quit // wscript_obj.js // *********************************************************** var Message; Message = "Свойства класса_WScript" + "\n\n"; with(WScript){ Message+= "Name: " + Name + "\nFullName: " + FullName + "\n"; Message+= "ScriptName: " + ScriptName + "\nScriptFullName: " + ScriptFullName + "\n"; Message+= "Path: " + Path + "\nVersion: " + Version + "\n"; Message+= "Application: " + Application + "\nTimeout: " + Timeout + "\nBuildVersion: " + BuildVersion; //используем функцию WScript Echo для вывода данных Echo (Message); //Создаем задержку в 2000 миллисекунд с помощью Wscript Sleep Sleep (2000); //устанавливаем время выхода через 2 секунды Timeout = 2; Echo ("Это окно закроется через 2 секунды"); // Wscript Quit - завершение работы Quit(); } |
В данном примере приводятся аналогичные действия, но, стоит всегда обращать внимание на правила синтаксиса языка. Видим, что язык jscript требует наличие точки с запятой в конце каждого оператора и наличие круглых скобок после метода, в которых прописываются параметры. Также не стоит забывать про то, что сам язык чувствителен к регистру. Обратите внимание, что список хранится в переменной Message, как и с языком vbscript, тут для сокращения программного кода мы использовали оператор with.
И так, давайте подытожим: в этой статье мы рассмотрели базовые свойства класса_WScript, а также три метода: wscript echo, wscript quit и wscript sleep.