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

на главную - закладки

Жанры

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
:

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

Железный Воин Империи II

Зот Бакалавр
2. Железный Воин Империи
Фантастика:
фэнтези
попаданцы
аниме
5.75
рейтинг книги
Железный Воин Империи II

Чужбина

Седой Василий
2. Дворянская кровь
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чужбина

Моя простая курортная жизнь 3

Блум М.
3. Моя простая курортная жизнь
Юмор:
юмористическая проза
5.00
рейтинг книги
Моя простая курортная жизнь 3

Князь

Шмаков Алексей Семенович
5. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
сказочная фантастика
5.00
рейтинг книги
Князь

Прапорщик. Назад в СССР. Книга 7

Гаусс Максим
7. Второй шанс
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Прапорщик. Назад в СССР. Книга 7

Убивать, чтобы жить

Бор Жорж
1. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать, чтобы жить

Темные тропы и светлые дела

Владимиров Денис
3. Глэрд
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Темные тропы и светлые дела

Весь цикл «Десантник на престоле». Шесть книг

Ланцов Михаил Алексеевич
Десантник на престоле
Фантастика:
альтернативная история
8.38
рейтинг книги
Весь цикл «Десантник на престоле». Шесть книг

Ненужная жена. Хозяйка брошенного сада

Князева Алиса
1. нужные хозяйки
Фантастика:
попаданцы
фэнтези
5.00
рейтинг книги
Ненужная жена. Хозяйка брошенного сада

Имя нам Легион. Том 14

Дорничев Дмитрий
14. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
фантастика: прочее
5.00
рейтинг книги
Имя нам Легион. Том 14

Точка Бифуркации IV

Смит Дейлор
4. ТБ
Фантастика:
героическая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Точка Бифуркации IV

Позывной "Князь"

Котляров Лев
1. Князь Эгерман
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Позывной Князь

Двойник короля 19

Скабер Артемий
19. Двойник Короля
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Двойник короля 19

Я все еще не царь. Книга XXVI

Дрейк Сириус
26. Дорогой барон!
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Я все еще не царь. Книга XXVI