VBScript

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání
VBScript
Ikona souboru typu .vbs
Paradigma: strukturovaný, imperativní, objektově orientovaný, odlehčený
Vznikl v: 1996
Vývojář: Microsoft
Poslední verze: 5.8 /
Hlavní implementace: Windows Script Host, Active Server Pages
Ovlivněn jazyky: Visual Basic
Ovlivnil jazyky: Windows PowerShell
OS: Windows

VBScript (VBS, Visual Basic Scripting Edition) je skriptovací jazyk určený pro vkládání kódu do webových stránek a běžné skriptování ve WSH (Interpreter skriptů nazývaný Windows Scripting Host), založený na jazyce Visual Basic. Vznik jazyka je spolu se vznikem jazyka JScript (taktéž WSH a CScript - neplést s JavaScriptem) považován za odpověď firmy Microsoft na vznik jazyka JavaScript.

VBScript obsahuje každá instalace Microsoft Windows od verze Windows 98.[1] Pro vykonávání skriptů na webových stránkách je nutný Internet Explorer, jiné prohlížeče nejsou kompatibilní.

Použití[editovat | editovat zdroj]

Jazyk VBS je mezi hackery oblíbený pro psaní virů (například: „W32.LoveLetter“ známý jako „I Love You“ a mnoho dalších), mimo jiné proto, že malé skripty lze spouštět na většině současných verzí Windows s WSH a dokáže přes VBA API (Aplikační rozhraní „Visual Basic For Aplications“) přistupovat k velkému množství programů na počítači oběti a rozesílat se tak např. pomocí e-mailu jejím známým a vytahovat z počítače důvěrná data.

Jazyk VBS je dobře použitelný i v kladném smyslu. Např: ve HTA Html Application. VBS je po JavaScriptu nejpoužívanější skriptovací jazyk hlavně díky podobnosti Visual Basicu a téměř neomezeným schopnostem, které zajišťuje WMI. Na spuštění VBS je potřeba nainstalovaný Windows Scripting Host.

Ukázka kódu[editovat | editovat zdroj]

Hello world[editovat | editovat zdroj]

Tradiční program „Hello world“ vypadá takto:

MsgBox "Hello, world!"

SendKeys[editovat | editovat zdroj]

Metoda SendKeys vysílá sekvence znaků do aktivovaného okna (jako při psaní na klávesnici). SendKeys nemusí fungovat ve všech programech, některé vyžadují skutečné stisky kláves.

Procedura, která po znacích vypíše text, mezi jednotlivými znaky počká požadovaný počet milisekund.

Sub vypsatPoZnacich(text, zpozdeni)
    Set shell = createobject("wscript.shell")
 
    For i = 1 To Len(text)
        Wscript.Sleep zpozdeni
        shell.SendKeys Mid(text, i, 1)
    Next
End Sub

Volání procedury:

Call vypsatPoZnacich("Hello, World!", 250)

Převrácení textu[editovat | editovat zdroj]

Následující program bude pomocí vstupního dialogu požadovat text k převrácení. Pokud uživatel dialog zruší, nebo odešle prázdný řetězec program se ukončí, jinak bude v dalším dialogu zobrazen výsledek. Postup se bude opakovat dokud bude uživatel chtít.

Do
    opakovat = true
    text = InputBox("Zadej text k převrácení", "Převrátit text")
 
    If text = "" Then
        opakovat = false
    Else
        prevraceny = StrReverse(text)
        vystup = MsgBox(text & " = " & prevraceny, vbRetryCancel, "Převrácený text")
        If vystup = vbCancel Then opakovat = false
    End If
Loop While opakovat = true

Související články[editovat | editovat zdroj]

Reference[editovat | editovat zdroj]

  1. Windows Script Host Version Information [online]. Microsoft, [cit. 2013-06-16]. Dostupné online.  

Externí odkazy[editovat | editovat zdroj]