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

на главную

Жанры

Windows Script Host для Windows 2000/XP

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

Шрифт:

/* Описание: Использование из сценария внешнего объекта */

/* автоматизации (Microsoft Word) */

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

var WA,WD,Sel; //Объявляем переменные

//Создаем объект--приложение Microsoft Word

WA=WScript.CreateObject("Word.Application");

//Можно было использовать конструкцию

//WA=new ActiveXObject("Word.Application");

WD=WA.Documents.Add; //Создаем
новый документ (объект Document)

WA.Visible=true; //Делаем Word видимым

Sel=WA.Selection; //Создаем объект Selection

Sel.Font.Size=14; //Устанавливаем размер шрифта

Sel.ParagraphFormat.Alignment=1; //Выравнивание по центру

Sel.Font.Bold=true; //Устанавливаем полужирный шрифт

Sel.TypeText("Привет!\n"); //Печатаем строку текста

Sel.Font.Bold=false; //Отменяем полужирный шрифт

Sel.ParagraphFormat.Alignment=0; //Выравнивание по левому краю

//Печатаем строку текста

Sel.TypeText("Эти строки напечатаны с помощью WSH.");

WD.PrintOut; //Выводим документ на принтер

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

Листинr 2.27. Использование сервера автоматизации Мiсrоsоft Word (VBScript)

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

' Имя: PrintInWord.vbs

' Язык: VBScript

' Описание: Использование из сценария внешнего объекта

' автоматизации (Microsoft Word)

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

Option Explicit

Dim WA,WD,Sel ' Объявляем переменные

'Создаем объект--приложение Microsoft Word

Set WA=WScript.CreateObject("Word.Application")

' Можно было использовать конструкцию

' Set WA=CreateObject("Word.Application")

Set WD=WA.Documents.Add 'Создаем новый документ (объект Document)

WA.Visible=true ' Делаем Word видимым

Set Sel=WA.Selection 'Создаем объект Selection

Sel.Font.Size=14 'Устанавливаем размер шрифта

Sel.ParagraphFormat.Alignment=1 'Выравнивание по центру

Sel.Font.Bold=true 'Устанавливаем полужирный шрифт

Sel.TypeText "Привет!" & vbCrLf 'Печатаем строку текста

Sel.Font.Bold=false 'Отменяем полужирный шрифт

Sel.ParagraphFormat.Alignment=0 'Выравнивание
по левому краю

'Печатаем строку текста

Sel.TypeText "Эти строки напечатаны с помощью WSH."

WD.PrintOut 'Выводим документ на принтер

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

Запуск из сценариев внешних программ 

Внешние программы и команды можно запускать из сценариев различными способами.

Запуск приложений Windows

Запустить из сценария WSH другое приложение можно с помощью методов

Run
или
Exec
объекта
WshShell
.

При использовании метода

Run
для запускаемого приложения можно задать тип окна (при условии, что приложение поддерживает этот тип). Например, в результате выполнения следующих двух строк JScript-кода:

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

WshShell.Run("notepad", 3);

программа Блокнот (notepad.exe) будет запущена в максимизированном (распахнутом на весь экран) окне (список всех возможных значений параметров метода

Run
приведен в табл. 1.13).

Замечание

Метод

Run
всегда создает новый экземпляр запускаемого процесса, с его помощью нельзя ни повторно активизировать окно запущенного приложения (для этого используется метод
AppActivate
), ни свернуть или развернуть его.

Другим вариантом запуска из сценария приложения Windows является применение метода

Exec
. Этот метод запускает приложение, путь к которому указан как параметр метода, и возвращает объект
WshScriptExec
.

Например:

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

var theNotepad = WshShell.Exec("calc");

Замечание

При подобном запуске приложения, в отличие от метода

Run
, нельзя задать тип окна.

Объект

WshScriptExec
позволяет контролировать ход выполнения запущенного приложения с помощью свойства
Status
— если
Status
равен 0, то приложение выполняется, если
Status
равен 1, то приложение завершено. Кроме этого, используя метод
Terminate
, можно принудительно завершить работу того приложения, которому соответствует объект
WshScriptExec
.

В листинге 2.28 приведен сценарий на языке JScript, в котором с помощью метода Exec запускается Блокнот (notepad.exe); ссылка на соответствующий объект

WshScriptExec
сохраняется в переменной
theNotepad
:

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

Моров. Том 3

Кощеев Владимир
2. Моров
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Моров. Том 3

Бестужев. Служба Государевой Безопасности

Измайлов Сергей
1. Граф Бестужев
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Бестужев. Служба Государевой Безопасности

Черный Маг Императора 4

Герда Александр
4. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 4

Законы Рода. Том 11

Андрей Мельник
11. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Законы Рода. Том 11

Третий. Том 3

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий. Том 3

Лейб-хирург

Дроздов Анатолий Федорович
2. Зауряд-врач
Фантастика:
альтернативная история
7.34
рейтинг книги
Лейб-хирург

Печать мастера

Лисина Александра
6. Гибрид
Фантастика:
попаданцы
технофэнтези
аниме
фэнтези
6.00
рейтинг книги
Печать мастера

Воплощение Похоти

Некрасов Игорь
1. Воплощение Похоти
Фантастика:
юмористическое фэнтези
попаданцы
рпг
аниме
5.00
рейтинг книги
Воплощение Похоти

На границе империй. Том 5

INDIGO
5. Фортуна дама переменчивая
Фантастика:
боевая фантастика
попаданцы
7.50
рейтинг книги
На границе империй. Том 5

Последний Паладин. Том 9

Саваровский Роман
9. Путь Паладина
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Последний Паладин. Том 9

Шайтан Иван 5

Тен Эдуард
5. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
5.00
рейтинг книги
Шайтан Иван 5

Proxy bellum

Ланцов Михаил Алексеевич
5. Фрунзе
Фантастика:
попаданцы
альтернативная история
4.25
рейтинг книги
Proxy bellum

Наследие Маозари 5

Панежин Евгений
5. Наследие Маозари
Фантастика:
фэнтези
юмористическое фэнтези
5.00
рейтинг книги
Наследие Маозари 5

Поход

Валериев Игорь
4. Ермак
Фантастика:
боевая фантастика
альтернативная история
6.25
рейтинг книги
Поход