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

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

Жанры

Windows Script Host для Windows 2000/XP

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

Шрифт:

/* Описание: Вывод кода выхода запущенного приложения */

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

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

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

//Запускаем Блокнот и ожидаем завершения его работы

Return = WshShell.Run("notepad " + WScript.ScriptFullName, 1, true);

//Печатаем код возврата

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

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

Другие примеры запуска приложений с помощью метода Run приведены в главе 2 (см. листинги 2.31 и 2.32).

Метод SendKeys

Каждая клавиша задается одним или несколькими символами. Например, для того чтобы задать нажатие друг за другом букв А, Б и В, нужно указать в качестве параметра для

SendKeys
строку "
АБВ
":
string="AБB"
.

Несколько символов имеют в методе SendKeys специальное значение:

+
,
^
,
%
,
~
,
(
,
)
. Для того чтобы задать один из этих символов, их нужно заключить в фигурные скобки
{}
. Например, для задания знака плюс используется
{+}
. Квадратные скобки
[]
хотя и не имеют в методе SendKeys специального смысла, их также нужно заключать в фигурные скобки. Кроме этого, для задания самих фигурных скобок следует использовать следующие конструкции:
{{}
(левая скобка) и
{}}
(правая скобка).

Для задания неотображаемых символов, таких как <Enter> или <Tab> и специальных клавиш, в методе

SendKeys
используются коды, представленные в табл. 1.14.

Таблица 1.14. Коды специальных клавиш для

SendKeys

Названия клавиш Код Названия клавиш Код
<Backspace>
{BACKSPACE}
,
{BS}
или
{BKSP}
<->>
{RIGHT}
<Break>
{BREAK}
<F1>
{F1}
<Caps Lock>
{CAPSLOCK}
<F2>
{F2}
<Del> или <Delete>
{DELETE}
или
{DEL}
<F3>
{F3}
<End>
{END}
<F4>
{F4}
<Enter>
{ENTER}
ИЛИ
~
<F5>
{F5}
<Esc>
{ESC}
<F6>
{F6}
<Home>
{HELP}
<F7>
{F7}
<Ins> или <Insert>
{INSERT}
или
{INS}
<F8>
{F8}
<Num Lock>
{NUMLOCK}
<F9>
{F9}
<Page Down>
{PGDN}
<F10>
{F10}
<Page Up>
{PGUP}
<F11>
{F11}
<Print Screen>
{PRTSC}
<F12>
{F12}
<Scroll Lock>
{SCROLLLOCK}
<F13>
{F13}
<Tab>
{TAB}
<F14>
{F14}
<^>
{UP}
<F15>
{F15}
<<->
{LEFT}
<F16>
{F16}
<V> {DOWN}    

Для задания комбинаций клавиш с <Shift>, <Ctrl> или <Alt>, перед соответствующей клавишей нужно поставить один или несколько кодов из табл. 1.15.

Таблица 1.15. Коды клавиш <Shift>, <Ctrl> и <Alt>

Клавиша Код
<Shift>
+
<Ctrl>
^
<Alt>
%

Для того чтобы задать комбинацию клавиш, которую нужно набирать, удерживая нажатыми клавиши <Shift>, <Сtrl> или <Alt>, нужно заключить коды этих клавиш в скобки. Например, если требуется сымитировать нажатие клавиш <G> и <S> при нажатой клавише <Shift>, следует использовать последовательность "

+(GS)
". Для того же, чтобы задать одновременное нажатие клавиш <Shift>+<G>, а затем <S> (уже без <Shift>), используется "
+GS
".

В методе SendKeys можно задать несколько нажатий подряд одной и той же клавиши. Для этого необходимо в фигурных скобках указать код нужной клавиши, а через пробел — число нажатий. Например,

{LEFT 42}
означает нажатие клавиши <<-> 42 раза подряд;
{h 10}
означает нажатие клавиши <h> 10 раз подряд.

Замечание

Метод

SendKeys
не может быть использован для посылки нажатий клавиш для приложений, которые не были разработаны специально для запуска в Microsoft Windows (например, для приложений MS-DOS).

Примеры, иллюстрирующие использование

SendKeys
, приведены в листингах 1.13, 2.31, 2.32.

Работа с ярлыками

Свойства и методы для работы с ярлыками Windows предоставляют два объекта WSH:

WshShortcut
и
WshUrlShortcut
.

Объект WshShortcut

С помощью объекта

WshShortcut
можно создать новый ярлык Windows или изменить свойства уже существующего ярлыка. Этот объект можно создать только с помощью метода
CreateShortcut
объекта
WshShell
. В листинге 1.19 представлен пример сценария, в котором создается ярлык на этот самый сценарий (ярлык будет находиться в текущем каталоге).

Листинг 1.19. Создание ярлыка на выполняемый сценарий

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

/* Имя: MakeShortcut1.js */

/* Язык: JScript */

/* Описание: Создание ярлыка на выполняемый сценарий */

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

var WshShell,oShellLink;

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

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

//Создаем ярлык в текущем каталоге

oShellLink = WshShell.CreateShortcut("Current Script.lnk");

//Устанавливаем путь к файлу

oShellLink.TargetPath = WScript.ScriptFullName;

//Сохраняем ярлык

oShellLink.Save;

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

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

Я все еще князь. Книга XXI

Дрейк Сириус
21. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще князь. Книга XXI

Тринадцатый

NikL
1. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
6.80
рейтинг книги
Тринадцатый

Офицер

Земляной Андрей Борисович
1. Офицер
Фантастика:
боевая фантастика
7.21
рейтинг книги
Офицер

Родословная. Том 2

Ткачев Андрей Юрьевич
2. Линия крови
Фантастика:
городское фэнтези
аниме
фэнтези
5.00
рейтинг книги
Родословная. Том 2

Бастард Императора. Том 6

Орлов Андрей Юрьевич
6. Бастард Императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Бастард Императора. Том 6

Кодекс Крови. Книга VI

Борзых М.
6. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга VI

Дитя прибоя

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

Хозяин Стужи 6

Петров Максим Николаевич
6. Злой Лед
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Хозяин Стужи 6

Первый среди равных. Книга XII

Бор Жорж
12. Первый среди Равных
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Первый среди равных. Книга XII

Призыватель нулевого ранга. Том 3

Дубов Дмитрий
3. Эпоха Гардара
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Призыватель нулевого ранга. Том 3

Газлайтер. Том 28

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

Наномашины, звереныш! Том 5

Новиков Николай Васильевич
5. Первый среди карапузов
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Наномашины, звереныш! Том 5

Геном хищника. Книга четвертая

Гарцевич Евгений Александрович
4. Я - Легенда!
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Геном хищника. Книга четвертая

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

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