Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






День одинадцятий






Тема: Робота з Windows Script Host

Мета: навчитися застосовувати скриптові мови програмування

План роботи:

1. Занотувати в конспект теоретичну інформацію щодо серверу сценаріїв Windows Script Host.

2. Ознайомитись на прикладах сценаріїв із сценаріями команд, написаних на Jscript та VBscript.

3. Привести програми та їхнє призначення у звіті, а також написати призначення кожного рядка в програмах.

4. Оформити звіт включно з висновками про виконану роботу.

1)

'Вивід простого повідомлення

WScript.Echo " Hello", " world"

2)

Вивід простих вікон, що містять інформацію про WSH на ПК

WScript.echo WScript.FullName

WScript.Echo WScript.Name

WScript.Echo WScript.Path

WScript.Echo wscript.ScriptFullName

WScript.Echo WScript.ScriptName

WScript.Echo WScript.Version

3)

Демонстрація роботи вікна з полем для вводу інформації, що в подальшому використовується.

Name=InputBox(" Please type Enter your name: ", " Your name required: ", " Student")

Wscript.Echo " Hello" +Name

4)

Робота з функціям часу для привітання

On Error Resume Next

If Hour(Now)< 12 Then

WScript.Echo " Good morning"

Else

If Hour(now)< 18 Then

WScript.Echo " Good afternoon"

Else

WScript.Echo " Good Evening"

End If

End If

5)

Можливість отримання місця розміщення файлу на ПК

Set objArgs = WScript.Arguments

For I=0 to objArgs.Count-1

Wscript.Echo objArgs(I)

Next


6)

Створення ярликів:

Також просто створювати ярлики. Розглянемо приклад створення ярлика до калькулятора та помістимо його в Автозавантаження.

' Цей приклад показує, як створювати ярлик до програми

' і копіювати його в задану папку

L_Welcome_MsgBox_Message_Text = _

" Цей скрипт створить ярлик до калькулятора й помістить його в

Автозавантаження"

L_Welcome_MsgBox_Title_Text = " Операційні системи"

Call Welcome()

' Створюємо ярлик

Dim WSHShell

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

Dim MyShortcut, MyDesktop, StartupPath

' Взнаємо шлях до спеціальної папки Автозавантаження

StartupPath = WSHShell.SpecialFolders(" Startup")

' Створюємо ярлик для Автозавантаження

Set MyShortcut = WSHShell.CreateShortcut(StartupPath & _

" \Ярлик до калькулятора.lnk")

' Встановлюємо властивості для ярлика

MyShortcut.TargetPath =

WSHShell.ExpandEnvironmentStrings(" %windir%\calc.exe")

MyShortcut.WorkingDirectory =

WSHShell.ExpandEnvironmentStrings(" %windir%")

MyShortcut.WindowStyle = 4

MyShortcut.IconLocation = _

WSHShell.ExpandEnvironmentStrings(" %windir%\calc.exe, 0")

MyShortcut.Save

WScript.Echo " Ярлик до калькулятора створений і поміщений в

Автозавантаження"

Sub Welcome()

Dim intDoIt

intDoIt = MsgBox(L_Welcome_MsgBox_Message_Text, _

vbOKCancel + vbInformation, _

L_Welcome_MsgBox_Title_Text)

If intDoIt = vbCancel Then

WScript.Quit

End If

End Sub

7)

Спеціальні папки:

В англійській версії Windows аналогічна папка має ім'я Startup, і якщо ви вкажете точний шлях начеб-то C: \WINDOWS\Головне меню\Програми\Автозавантаження, то це спрацює лише в російській версії Windows. Щоб уникнути цих проблем, Microsoft створила список

спеціальних папок. Для одержання доступу до якої-небудь спеціальної папки можна

скористатися властивістю SpecialFolders об'єкта WshShell.

//Десктоп потокового користувача

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

strDesktop = WshShell.SpecialFolders(" Desktop");

WScript.Echo(strDesktop);

// Десктоп загальний для всіх користувачів

strDesktop = WshShell.SpecialFolders(" AllUsersDesktop");

WScript.Echo(strDesktop);

//Автозавантаження

strDesktop = WshShell.SpecialFolders(" Startup");

WScript.Echo(strDesktop);

//Головні меню

strDesktop = WshShell.SpecialFolders(" StartMenu");

WScript.Echo(strDesktop);

8)

Реєстр:

Для роботи з реєстром використовується об'єкт Wscript.Shell з його методами RegRead, RegWrite, RegDelete.

Приклад створення запису в реєстрі, що дозволяє змінювати заголовок в Internet Explorer.

' змінюємо заголовок в Internet Explorer

Dim WshShell, bKey

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

WshShell.RegWrite " HKCU\Software\Microsoft\Internet Explorer\Main\Window

Title", " Операційні системи", " REG_SZ"

WScript.Echo " Запустивши браузер, побачимо зміну заголовока"

' щоб видалити створений рядок,

' прибрати коментар з наступного рядка

'WshShell.RegDelete " HKCU\Software\Microsoft\Internet Explorer\Main\Window

Title"

9)

Запуск інших додатків:

Об'єкт WshShell дозволяє запускати інші додатки. У наступному прикладі буде запущено дві копії Блокнота – новий екземпляр та із вмістом нашого скрипта:

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

' Запускаємо новий екземпляр Блокнота

WshShell.Run " %windir%\notepad"

' Відкриваємо наш скрипт у Блокноті

WshShell.Run " %windir%\notepad " & WScript.ScriptFullName

10)

Робота з файлами:

Також легко можна копіювати, переносити й видаляти файли й папки. Не представляє

складності й робота з переглядом вмісту файлу і його редагування. Освоївши данні

можливості, ви одержуєте можливість працювати з файлами autoexec.bat і config.sys,

перевіряти значення параметрів в win.ini, вести логи роботи користувачів

Для цього треба ініціалізувати об'єкт файлової системи FSO, а потім скористатися одним

з його методів для відкриття файлу:

' Тільки для прикладу!

Const ForReading = 1, ForWriting = 2, ForAppending = 8

Dim fso, f

Set fso = CreateObject(" Scripting.FileSystemObject")

Set f = fso.OpenTextFile(" c: \autoexec.bat", ForAppending, True)

f.Write " Hello world! "

f.Close

Отже, OpenTextFile відкриває файл, якщо його немає, то створюється новий файл. З

параметрів, що передаються методу, обов'язковим є тільки перший – ім'я файлу. Інші

параметри можна не вказувати. Іншим параметром встановлюється режим відкриття

файлу. Можливі значення наступні:

1 – Файл відкривається тільки для читання

2 – Файл відкривається для запису. Причому, весь вміст файлу, який був до цього,

знищиться

8 – Файл відкривається для додавання даних. Всі, що буде записано, додасться в

кінець файлу. Досить зручно для ведення різних логів.

Третя змінна може приймати значення true або false. Вона показує, чи створювати новий

файл, якщо його до цього не існувало. Якщо значення дорівнює true, то новий файл буде

створений.

11)

Активізувати вікно вже запущеної програми:

//JScript

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

WshShell.AppActivate(" Блокнот");

Запустіть програму, наприклад, MS Office Word та зробіть вікно цієї програми неактивним після запуску скрипта.

12)

//JScript

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

KL = true;

while (KL) {

if (WshShell.AppActivate(" Блокнот")) {

WriteWord();

KL = false;

} if (

WshShell.AppActivate(" Microsoft Word")) {

WriteWord();

KL = false;

}

WScript.Sleep(10000);

}

function WriteWord() {

WshShell.SendKeys(" THE ");

WScript.Sleep(300);

WshShell.SendKeys(" MATRIX ");

WScript.Sleep(300);

WshShell.SendKeys(" HAS ");

WScript.Sleep(300);

WshShell.SendKeys(" YOU...");

WScript.Sleep(300);

}

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

KL = true;

while (KL) {

if (WshShell.AppActivate(" Microsoft Word")) {

WriteWord();

KL = false;

}

WScript.Sleep(3000);

}

function WriteWord() {

WshShell.SendKeys(" %");

WScript.Sleep(300);

WshShell.SendKeys(" {ENTER}");

WScript.Sleep(300);

WshShell.SendKeys(" {DOWN}");

WScript.Sleep(300);

WshShell.SendKeys(" {DOWN}");

WScript.Sleep(300);

WshShell.SendKeys(" {DOWN}");

WScript.Sleep(300);

WshShell.SendKeys(" {DOWN}");

WScript.Sleep(300);

WshShell.SendKeys(" {ENTER}");

WScript.Sleep(300);

WshShell.SendKeys(" test");

WScript.Sleep(300);

WshShell.SendKeys(" {ENTER}");






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.