
Zahajuji seriál, který chce připomenout neprávem opomíjený automat pro Windows. Jde o velmi důležitou část operačního systému - Windows Script Host (WSH). Kdo jej nezná, asi mi položí otázku, k čemu takový systém slopuží? Tedy, je určen pro vytváření skriptů, které urychlují (automatizují) práci ve Windows. Dnes úvodem trochu teorie a několik ukázek.
Pokyny z Příkazového řádku
Potřebujete zjistit, co máte ve složkách na pevném disku, může začít ve Windows např. spuštěním nabídky Start - Hledat. Pochopitelně, složky lze vypsat také příkazem DIR v DOSu. Avšak syntaxe fungující na příkazovém řádku je dnes pro drtivou většinu uživatelů, používajících k ovládání myš, nezajímavá. Pro rychlejší a jednodušší výpis si můžeme vzít na pomoc Windows Scripting Host a vytvořit natrvalo skript, který umí bleskově vyhledat soubory, např. podle zkratek. Takto si můžeme zautomatizovat řadu dalších úloh ve Windows, Wordu, Excelu i Outlook Expressu. Vytvořený skriptovací soubor umístíme na plochu, aby byl při ruce. Po jeho otevření zadáme zkratku nebo název a máme složku, soubor či celou aplikaci rychle k dispozici. V tom je podstata a výhoda skriptovacího prostředí WSH
Trochu historie
V počátcích operačního systému Windows nebylo skriptování vůbec podporováno. Výjimku tvořily dávkové soubory MS-DOS. Jenže jejich skriptovací schopnosti byly malé. Jako když píšete instrukce z příkazové řádky. Nápravu nepřinesl ani skriptovací jazyk Perl, který se ve Windows patřičně nerozšířil. V té době se však již rozvíjel Basic a QBasic. Vzpomínám si, jak jsme ve škole tyto skriptovací jazyky nenáviděli i obdivovali. Staly se pak základem programovacích jazyků Visual Basic (VB) a Visual Basic for Applications, z nichž se vyvinul Visual Basic Script (VBScript). A právě prostředky tohoto jazyka využívá Windows Skript Host, který byl poprvé zabudován do Windows 95. Postupně se rozšířil do dalších verzí tohoto operačního systému. WSH podporuje i další programovací jazyk JScript (JS), který je implementací jazyka JavaScript (oba zmiňované programovací jazyky mají základ v jazyce Java). Jejich používání ve WSH se tak stalo plnohodnotným skriptovacím prostředím pro řízení operačního systému Windows. Woknaři tak mají podobné možnosti jako uživatelé Unixu. Jen je využít!
Co umí WSH?
V prvé řadě je třeba říci, že WSH svými nástroji naprosto překonává dávkové soubory MS-DOSu i většiny současných makrorekordérů. Je to samostatný silný objektový modul, který dává příležitost k využití výhod skriptovacích jazyků VBScript a JScript k plnění užitečných úloh. Zvláště těch, které je nutné vykonávat opakovaně. Tedy dokonale automatizuje činnost uživatele při obsluze Windows a dalších aplikací. Jde o skriptovací procesory, které používá Internet Explorer a Microsoft Internet Information Server. Skripty využívající WSH urychlují podstatně práci a orientaci uživatele při práci ve Windows. Jedním, dvěma kliknutími spustíte skript, který za vás provede úlohu, jež při ručním ovládání zabere mnohem více času. Přitom skripty jsou spolehlivé, chrání uživatele před chybami a sdělí mu, kde se dopustil nepřesnosti. Vedle běžných činností (zjišťování, otevírání, přemísťování a kopírování souborů, čtení a zapisování dat) umožňuje WSH:
- Rychlé zpřístupnění příkazů operačního systému.
- Snadné nastavení operačního systému.
- Možnost správy uživatelských jmen.
- Spolupracuje s aplikacemi Word, Excel. Může automatizovat správu Microsoft SQL Serveru a Internet Information Serveru.
- Umožňuje využití komponent ActiveX.
- Spolupráce s MS Outlook Expresem.
Scripting Engine
Skript (textový soubor, který obsahuje příkazy) nelze samostatně spustit. Musí být načten nějakým programem a převeden (interpretován) do podoby, kterou operační systém přijme. A právě tento převod zajišťuje u VB skriptů a Java skriptů tzv. Scripting Engine, což jsou pro účely WSH soubory wscript.exe a cscript.exe. Nejprve si proto ověřte, zda máte v počítači nainstalovanou verzi WSH 5.6, která tyto soubory obsahuje. Měla by být standardním vybavením ve Windows 98/ME/NT4.0/2k/XP. Kdo používá Internet Explorer 5 a vyšší, určitě má utilitu - soubor scr56cs.exe (728 kB) na svém pevném disku. Takže stačí ji vyhledat (v adresáři Windows) a spustit. Pro Windows 2k je určen zmíněný soubor scriptcs.exe (732 kB). Oba soubory si můžete stáhnout z adresy: Scripting Engine.
V čem psát?
Skripty můžeme psát v jednoduchém Notepadu, ale nejlepší bude použít některý editor HTML, který čte a také zobrazuje soubory vbs, např. freewarový 1st Page 2000. Použít můžete rovněž textové editory MS Word (má zabudovaný editor Visual Basic), nebo MS Office 2000 (obsahuje Script Editor) či v neposlední řadě český freewarový programovací editor http://pspad.zde.cz.
Syntaxe VBScriptI když WSH dokáže pracovat se dvěma programovacími jazyky, věnujme se pro začátek pouze VBScriptu, který je relativně jednoduchý. V jeho syntaxi jsou důležité následující zásady: Na první řádek skriptu je výhodné umístit vždy příkaz "Option Explicit". To pro kontrolu správnosti deklarovaných dat. Stroj vás upozorní na chybu! Za apostrofem (') se píše komentář, který skriptovací procesor ignoruje, a tedy nevypíše na monitor. Každý řádek musí obsahovat jeden příkaz. Ukončujeme ho klávesou ENTER. Delší řádek lze rozdělit způsobem: mezera - znak podtržení a ENTER. Používání malých i velkých písmen je dovoleno.
Tvoříme objekty
Tvorba nových objektů a práce s nimi patří k nejprogresivnějším postupům ve WSH. Bez ní se neobejde programátor, který má na starost správu sítě nebo komunikaci, ale ani náročnější uživatel PC. Definici objektů lze vyjádřit takto: Jsou to samostatné softwarové nástroje (komponenty), které vykonávají specifické úlohy. Právě WSH je úzce založen na těchto objektových modulech, které připravili autoři WSH pro programátory, aby jim "zabalené" skripty, nazývané objekty ulehčily (automatizovaly) práci. Uvádím přehled některých objektů, které se používají ve skriptech:
- WScript - kořen objektů WSH, který se vytváří při spuštění skriptu.
- WshShell - zajišťuje přístup k jádru Windows, registru a stavovým proměnným.
- WShNetwork (zajišťuje připojení k síti a k mapování síťových disků a tiskáren).
- WshSpecialFolders (je určený pro speciální složky Windows, a to zástupce, historii a šablony).
- WshURLShortcut (používá se jako zástupce internetové adresy, ať je uložen na webové stránce či počítači).
- FileSystemObject (má na starost služby pro správu souborů).
- Scripting - objekt, který je součásti Windows, umožňuje vstup ke knihovnám Microsoft SRL "scripting".
- ActiveX - objekt, který patří aplikaci Microsoft Word.
Jak pracujeme s objekty WSH?
Výhodou objektů WSH je, že jejich obecná syntaxe má své pevné standardy. Zkráceně řečeno, aby objekt ve skriptu fungoval, musíme pro něj získat odkaz. Pak můžeme s objektem pracovat pomocí vlastností a metod. Vlastnosti (atributy) nám umožňují ukládat informace. Pokud tedy budeme chtít použít vlastnost objektu, napíšeme nejprve název objektu, který tak bude hrát roli odkazu na objekt, uděláme tečku a za ní uvedeme název vlastnosti:
NázevObjektu.NázevVlastnostiJak pracujeme s metodami?
Metody nám umožňují, abychom s objekty mohli provádět různé akce. Každý objekt má několik metod. Konstrukce volání metody je prakticky stejná jako u syntaxe vlastnosti:
NázevObjektu.NázevMetody SeznamParametrůZákladní objekt WScript
Základním objektem WSH je "WScript", který je kořenem všech objektů specifikovaných ve WSH. Umožňuje nejen získávat informace o běžícím skriptu, ale zároveň vytváří i další objekty. Má celkem deset vlastností a šest metod. Zde jsou nejpoužívanější:
- Application - (vlastnost) - vytvoří kopii objektu, předá parametr metodě a funkci.
- CreateObject - (metoda) - slouží k vytvoření instance objektu.
- Echo - (metoda) - otevře dialogové okno a zobrazí zadanou zprávu.
Jak vytvoříme nový objekt?
Musíme vytvořit novou instanci objektu, a to metodou "CreateObject". Musíme uvést parametr pro novou metod (indentifikátor objektu)
Příklad (1)Vytvořme skript, který nám bleskově otevře aplikaci MS Excel. Má definovat zápis do dvou buněk, vytvořený soubor pak uložit do adresáře "C:tabulka01.xls" Můžete rovněž kliknout na soubor pravým tlačítkem myší a z kontextového menu vyberete "Edit (upravit)", otevře se vám okno "Poznámkový blok" se skriptem. Ten si upravte pro své účely.
Skript "tabulka01.vbs"'Otevření aplikace Microsoft Excel
Dim Tabulka
Dim Data
'Vytvoříme novou instanci programu Excel
Set Tabulka = WScript.CreateObject ("Excel.Application")
'Nyní instanci zviditelníme na obrazovce
Tabulka.Visible = true
'Nyní vložíme nový sešit xls
Set Data = Tabulka.Workbooks.Add
'Nyní vložíme nová data do buňky Excelu
Tabulka.Cells(1,1).Value = 50
Tabulka.Cells(1,2).Value = 2
'Nyní budou data uložena
Data.SaveAs ("C:tabulka01.xls")
- Option Explicit - funkce, která hlídá správný zápis proměnných.
- Dim - klíčová slova, která definují proměnné (názvy Tabulka, Data).
- CreateObject - metoda, která byla použita k vytvoření instance aplikace Microsoft Excel.
- Excel.Application - identifikátor (název aplikace), který byl předán metodě.
- Visible = true - zadání logického parametru pro zviditelnění textu.
- Workbook - objekt, jako otevřený soubor xls.
- Add - metoda, která vrací odkaz na nový sešit.
- Cellls - vlastnost, která odkazuje na všechny buňky v sešitě Excel.
- Value - příkaz, který vloží zadaná data (číslo, text) do buněk (1 - řádek, 2 - sloupec).
- SaveAs - tato metoda uloží nově vytvořený sešit v Excelu "tabulka01.xls".
· WSH (6) matematické výpočty
· WSH (4): Skripty, metody
· Script Host (3): Vytváříme okna
· Script host (2): Skripty, knihovna SRL
· Script Host (1): Opomíjený automat
| URL: | |
| BB-Code: | |
| HTML: | |
| Sdílet: |

Díky!OK!Zkoušel jsem. Val...