Skript jazyka Visual Basic

Visual Basic Script (zkráceně VBScript nebo VBS ) je skriptovací jazyk vyvinutý společností Microsoft . Úzce souvisí s jazykem Visual Basic (VB) a Visual Basic for Applications (VBA) a je běžně interpretován .

Oblasti použití

VBS může přistupovat ke všem komponentám COM s rozhraním IDispatch, které jsou k dispozici ve Windows , zejména ke knihovnám programů Microsoft Office, databázím jako Access a SQL Server , dalším aplikacím a samozřejmě knihovnám operačního systému. Použití běžných programových knihoven (souborů DLL) není zamýšleno a je možné pouze s příslušnou podporou COM. V praxi existují tři oblasti použití pro VBS:

Operační systém Windows

Ovládání operačního systému Windows pro automatizaci standardních úkolů je možné pomocí vlastních skriptů přes Windows Script Host (WSH). Windows přijímají hlavně VBS uvnitř .VBSa .WSFsoubory spouštěné skriptovacím hostitelem Windows (od verze 2000 / ME) a ​​uvnitř .HTAa soubory spouštěné Internet Explorerem . a soubory jsou čistě textové soubory, které mohou komunikovat pouze prostřednictvím několika dialogů. a soubory jsou soubory HTML, které lze odpovídajícím způsobem zobrazit. VBScript a JavaScript ( JScript ) mohou být smíšené, jak je požadováno v rámci -, - a - soubory . Tyto soubory jsou soubory HTML, které je možno rozšířit do interaktivního formuláře pomocí VBS, JavaScript a prvky HTML. Když soubory jsou soubory nápovědy s bezplatnými soubory nápovědy kompilátoru HTML z konvenčních kompilovaných jsou. .CHM.VBS.WSF.HTA.CHM.WSF.HTA.CHM.HTA.CHM

Prohlížeč (VBS na straně klienta)

VBS lze vložit do webových stránek a ovládat tak webový prohlížeč na straně klienta (tj. V prohlížeči běží VBS). VBS tak plní funkci podobnou JavaScriptu Netscape , takže jej lze použít pro dynamický obsah a integrovat celé programy do webových stránek .

Na straně klienta však VBScript nedosáhl velkého významu, protože je podporován pouze přímo prohlížečem Microsoft Internet Explorer (s doplňky také Mozilla), zatímco JavaScript podporují všechny prohlížeče. V Internet Exploreru používají JavaScript a VBScript podobné modely zabezpečení a - teoreticky - mají přístup k objektům operačního systému pouze v omezeném rozsahu. Z důvodu nízkého využití není VBScript v Microsoft Edge podporován. Od roku 2019 Microsoft používá aktualizace k deaktivaci spustitelnosti kódu VBScript v aplikaci Internet Explorer 11.

Webový server (VBS na straně serveru)

U serverů pod Windows je VBS nedílnou součástí ASP ( Active Server Pages ) společnosti Microsoft . Kód VBS je integrován do stránky HTML s příponou ASP. Web Service Internet Information Services , interpretuje soubor ASP jako program a vrátí výsledek klientovi (například prohlížeč webové stránky pro návštěvníky) z. Tímto způsobem pro. B. je dotazována databáze, jejíž výsledek je zpracován a vydán - obvykle jako soubor HTML.

ASP tak soutěží s koncepty, jako je PHP . Služba webového serveru Microsoft IIS je srovnatelná s webovým serverem Apache . Mezitím se výše popsaný koncept také označuje jako „Classic ASP“, aby se odlišil od následných produktů (viz také část výhledu).

Budoucí použití VBScript

Microsoft VBScript stále podporuje jako systémovou součást všech aktuálních verzí Windows. Samotný jazyk však nebyl dlouho vyvíjen. Proto se někdy považuje za „mrtvý jazyk“. Microsoft také nabízí různé nástupnické produkty a upřednostňuje jejich použití; To lze vidět také na skutečnosti, že weby společnosti Microsoft související s WSH mizí. Avšak vzhledem k poměrně vysokému přijetí starých produktů a rozsáhlému používání řešení na nich založených, budou i nadále trávit značné množství času koexistencí.

  • V oblasti webového serveru má ASP.NET převzít úkoly takzvaného „klasického ASP“ a programovací jazyk Visual Basic .NET má nahradit VBS.
  • Windows PowerShell nyní existuje pro podporu administrativních úkolů , takže jej lze použít jako nástupnický produkt hostitele Windows Script.
  • Bezplatná vydání Visual Studio Express jsou také k dispozici pro implementaci rozsáhlých a složitých programů .

Jazyk

výhody

Hlavní výhody jazyka jsou:

  • k dispozici ve všech operačních systémech Windows od 2000 / 98SE (s IE 4 také od Windows 95);
  • malé velikosti souborů, protože jazyk je interpretován operačním systémem nebo prohlížečem;
  • Předchozí znalost jazyků Visual Basic (VB) a VBA usnadňuje začátek používání VBS;
  • Přístup k dalším aplikacím a nainstalovaným komponentám (například programům Microsoft Office ) a jejich objektovému modelu ;
  • Rozšiřitelnost prostřednictvím speciálně vyvinutých komponent (objektů).

nevýhoda

Mezi nevýhody patří:

  • žádné vývojové prostředí (IDE) pro podporu větších projektů; Programy Script Debugger a Script Editor nabízené společností Microsoft by měly být spíše považovány za mezery;
  • žádné použití mimo produkty společnosti Microsoft;
  • Nekompatibilita s jinými operačními systémy.

funkce

  • Ve srovnání s Visual Basic (VB) a Visual Basic for Applications (VBA) nezná VBS žádný typ dat, existuje pouze datový typ Variant , který může uložit všechny ostatní typy.
  • Rozsah funkcí se ve srovnání s VB dále snižuje.
  • Lze vytvářet třídy.
  • Stejně jako u JavaScriptu hostující skript automaticky zpracovává zdrojový text z prvního řádku a dokud nenarazí na funkční nebo procedurální instrukci. Speciální identifikace automaticky spouštěné programové části na začátku, jako např B. v C s 'int main ()', má za následek, že se nic neprovede.
  • Stejně jako u většiny skriptovacích jazyků jsou programy (skripty) VBScript k dispozici jako zdrojový text. Proto je stěží možné chránit váš vlastní kód před prohlížením. Náhodnému zobrazení zdrojového kódu lze zabránit jednoduchým typem šifrování, a to buď pomocí MS Script Encoder nebo ovládacího prvku ActiveX (objekt „Scripting.Encoder“). Šifrované soubory VBScript mají příponu .vbe(VBScript Encoded).

příklad

Jednoduchý VBScript pro zobrazení dialogového okna může vypadat takto:

  MsgBox "Textinhalt des Fensters", 0, "Name des Fensters"

Druhý argument určuje vzhled okna. Hodnota 0odpovídá jednoduchému oknu, které zobrazuje tlačítko OK vedle textového obsahu , ale existují i ​​jiné možnosti návrhu, například různá tlačítka nebo symboly.

Pokud je například tento kód uložen v textovém souboru s příponou pomocí editoru obsaženého ve Windows .vbs, stačí k jeho provedení dvojité kliknutí.

bezpečnostní

Jako součást aplikace Internet Explorer může VBScript - stejně jako další aktivní obsah - představovat další bezpečnostní riziko, pokud vhodně připravené webové stránky mohou využít existující bezpečnostní mezeru. Tyto mezery byly odstraněny například aktualizacemi společnosti Microsoft z června 2020. Rizikům se lze vyhnout tím, že zabráníte spuštění skriptu v aplikaci Internet Explorer nebo použijete jiný prohlížeč.

Poté, co se společnost Microsoft rozhodla povolit VBScript také jako součást e-mailů HTML v aplikacích Microsoft Outlook a Outlook Express , se prostřednictvím těchto aplikací rozšířilo mnoho virů pomocí původně nedostatečně chráněného rozhraní na ovládací prvky ActiveX . Potenciálním nebezpečím zde nejsou speciální vlastnosti VBScript, ale úzké propojení skriptů s dalšími součástmi systému. Podobné riziko je spojeno například se skripty PowerShellu.

Vzhledem k tomu, že skripty jsou k dispozici jako textové soubory, je jejich programový charakter někdy přehlížen. To může vést k podcenění jejich potenciálního dopadu. Příkaz „Otevřít“ nenačte skript pro úpravy, ale spíše jej provede.

webové odkazy

Wikibooks: Visual Basic Script  - výukové a výukové materiály

Individuální důkazy

  1. Fórum MSDN: Přístup k rozhraní Win32 API v souborech VBScript - volání funkce DLL pomocí makra aplikace Excel
  2. Skriptová součást (freeware): Rozšíření funkce WSH / VBS DynaLib - volání funkce DLL přes objekt COM
  3. heise online: Prohlížeč ořízne staré copánky: IE 11 v budoucnu bez aktivovaného VBScript. Citováno 4. srpna 2019 .
  4. Stáhnout MS Script Encoder (prostřednictvím archivu) ( Memento od 18. července 2012 v internetovém archivu )
  5. Microsoft Update Information: Security Update Guide, June 2020 Security Updates. Citováno 10. června 2020 .