» » » » Андрей Попов - Windows Script Host для Windows 2000/XP

Андрей Попов - Windows Script Host для Windows 2000/XP

На нашем литературном портале можно бесплатно читать книгу Андрей Попов - Windows Script Host для Windows 2000/XP, Андрей Попов . Жанр: Программное обеспечение. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале litmir.org.
Андрей Попов - Windows Script Host для Windows 2000/XP
Название: Windows Script Host для Windows 2000/XP
ISBN: -
Год: -
Дата добавления: 3 июль 2019
Количество просмотров: 327
Читать онлайн

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту readbookfedya@gmail.com для удаления материала

Windows Script Host для Windows 2000/XP читать книгу онлайн

Windows Script Host для Windows 2000/XP - читать бесплатно онлайн , автор Андрей Попов
В книге описывается сервер сценариев Windows Script Host (WSH) версии 5.6, который является одним из стандартных компонентов Windows ХР, а также может быть установлен в более ранних версиях Windows. Приводятся сценарии на языках VBScript и JScript, иллюстрирующие применение стандартных объектов WSH 5.6, включая создание из сценариев дочерних процессов и запуск сценариев на удаленных компьютерах. В качестве более сложных примеров рассматриваются сценарии, работающие с базами данных, управляющие приложениями Microsoft Office, организующие графический пользовательский интерфейс, использующие технологии ADSI (Active Directory Service Interface) и WMI (Windows Management Instrumentation) для решения задач администрирования. Освещены вопросы практической работы с XML-файлами и создания СОМ-объектов. Особое внимание уделяется вопросам безопасности при работе со сценариями, приводятся конкретные примеры настроек политик безопасности. К книге прилагается дискета с исходными текстами большинства примеров.
1 ... 35 36 37 38 39 ... 175 ВПЕРЕД
Перейти на страницу:

//Посылаем нажатия клавиш в окно Блокнота

WshShell.SendKeys("1{+}2=");

//Вставляем содержимое буфера Windows (<Ctrl>+V)

WshShell.SendKeys("^v");

//Выводим в окно Блокнота оставшуюся информацию

WshShell.SendKeys(" {(}c{)} Calculator");

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

Тот же пример, реализованный в виде VBScript-сценария, приведен в листинге 2.31.

Листинг 2.31. Запуск двух приложений и обмен данными между ними (VBScript)

'*******************************************************************

' РРјСЏ: Run&ExecWinApp.vbs

' Язык: VBScript

' Описание: Запуск двух приложений и обмен данными между ними

'*******************************************************************

Option Explicit

Dim WshShell, theCalculator  ' Объявляем переменные

' Создаем объект WshShell

Set WshShell = WScript.CreateObject("WScript.Shell")

WScript.Echo("Запускаем калькулятор и" & vbCrLf & "считаем 1+2")

' Создаем объект WshScript (запускаем Калькулятор)

Set theCalculator = WshShell.Exec("calc")

' Приостанавливаем выполнение сценария, для того, чтобы

' окно Калькулятора успело появиться на экране

WScript.Sleep 500

' Активизируем окно Калькулятора

WshShell.AppActivate theCalculator.ProcessID

' Посылаем нажатия клавиш в окно Калькулятора

WshShell.SendKeys "1{+}"

WshShell.SendKeys "2"

WshShell.SendKeys "~"    ' Клавиша <Enter>

WScript.Sleep 500

' Копируем результат вычисления в буфер Windows (<Ctrl>+C)

WshShell.SendKeys "^c"

' Выводим сообщение (активное окно меняется)

WScript.Echo "Закрываем калькулятор"

' Активизируем окно Калькулятора

WshShell.AppActivate theCalculator.ProcessID

' Закрываем окно Калькулятора (<Alt>+<F4>)

WshShell.SendKeys "%{F4}"

WScript.Echo "Запускаем Блокнот и копируем туда результат"

WshShell.Run "notepad"     ' Запускаем Блокнот

' Приостанавливаем выполнение сценария, для того, чтобы

' окно Блокнота успело появиться на экране

WScript.Sleep 1000

WshShell.AppActivate "notepad"    ' Активизируем окно Блокнота

' Посылаем нажатия клавиш в окно Блокнота

WshShell.SendKeys "1{+}2="

' Вставляем содержимое буфера Windows (<Ctrl>+V)

WshShell.SendKeys "^v"

' Выводим в окно Блокнота оставшуюся информацию

WshShell.SendKeys " {(}c{)} Calculator"

'*************  Конец ********************************************* 

Запуск независимых консольных приложений и команд DOS

Для запуска независимых, т.е. работающих в отдельном адресном пространстве и использующих свою копию переменных среды, консольных приложений или внешних (представленных исполняемыми файлами на жестком диске) команд DOS используется метод Run объекта WshShell. При этом выполнение сценария можно приостановить до окончания работы запущенного приложения, а затем проанализировать код выхода этого приложения (для этого третий параметр метода Run должен равняться true). Соответствующие примеры сценариев на языках JScript и VBScript приведены в листингах 2.32 и 2.33 соответственно.

Листинг 2.32. Запуск независимого консольного приложения (JScript)

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

/* РРјСЏ: RunConApp.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                   */

/* Описание: Запуск независимого консольного приложения и          */

/*           определение его кода выхода                           */

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

var WshShell, Code;  //Объявляем переменные

//Создаем объект WshShell

WshShell = WScript.CreateObject("WScript.Shell");

//Запускаем утилиту xcopy с ключом "/?" и ожидаем окончания ее работы

Code=WshShell.Run("xcopy /?",1,true);

//Печатаем полученный код возврата

WScript.Echo("Код возврата: ", Code);

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

Листинr 2.33. Запуск независимого консольного приложения (VBSсript)

'*******************************************************************

' РРјСЏ: RunConApp.vbs

' Язык: VBScript

' Описание: Запуск независимого консольного приложения и

'           определение его кода выхода

'*******************************************************************

Option Explicit

Dim WshShell, Code   ' Объявляем переменные

' Создаем объект WshShell

Set WshShell = WScript.CreateObject("WScript.Shell")

' Запускаем утилиту xcopy с ключом "/?" и ожидаем окончания ее работы

Code=WshShell.Run("xcopy /?",1,true)

' Печатаем полученный код возврата

WScript.Echo "Код возврата: ", Code

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

Для выполнения внутренней команды DOS нужно запустить командный интерпретатор (в Windows NT/2000/XP это файл cmd.exe, в Windows9х — command.com) и передать ему в качестве параметра нужную команду. Для того чтобы при вызове командного интерпретатора не заботиться о полном пути к cmd.exe, нужно использовать переменную среды COMSPEC.

Замечание

Для получения значения переменной среды ее имя нужно окружить знаками "%" (например, %COMSPEC%).

В листингах 2.34 и 2.35 приведены сценарии на языках JScript и VBScript, в которых запускаются внутренние команды COPY /? (вызов встроенной справки для сору) и DIR %WINDIR% (вывод содержимого системного каталога Windows).

При этом окно, в котором выполняется команда COPY /?, не закрывается после завершения этой команды, т.к. при запуске командного интерпретатора был указан ключ /k, а информация, выводимая командой DIR %WINDIR%, перенаправляется в файл windir.txt, после чего командное окно закрывается, т.к. для командного интерпретатора в этом случае был указан ключ /с.

1 ... 35 36 37 38 39 ... 175 ВПЕРЕД
Перейти на страницу:
Комментариев (0)