VBScript
Entwickler | Microsoft |
---|---|
Erstmals erschienen | 1996 |
Stabile Version | 5.8 |
OS | Fenster |
Dateiname -Erweiterungen | .VBS, .vbe, .wsf, .wsc (.asp, .hta, .htm, .html) |
Webseite | Dokumente |
Haupt Implementierungen | |
Windows -Skript -Host, Aktive Server-Seiten | |
Beeinflusst von | |
Visual Basic | |
Beeinflusst | |
Windows PowerShell |
Vbscript ("Microsoft Visual Basic Skriptausgabe ") ist ein Aktives Schreiben von Microsoft entwickelte Sprache, auf die modelliert wird Visual Basic. Es erlaubt Microsoft Windows Systemadministratoren Um leistungsstarke Tools zum Verwalten von Computern mit zu generieren Fehlerbehandlung, Unterroutinenund andere fortschrittliche Programmierkonstrukte. Es kann dem Benutzer die vollständige Kontrolle über viele Aspekte seiner Computerumgebung geben.
VBScript verwendet die Komponentenobjektmodell Zugriff auf Elemente der Umgebung, in der sie ausgeführt wird; Zum Beispiel wird das DateiSystemObject (FSO) verwendet Erstellen, lesen, aktualisieren und löschen Dateien. VBScript wurde standardmäßig in jeder Desktop -Version von installiert Microsoft Windows seit Windows 98;[1] in Windows Server seit Windows NT 4.0 Optionspaket;[2] und optional mit Windows CE (Abhängig vom Gerät ist es installiert).
Ein VBScript -Skript muss in a ausgeführt werden Hostumgebungvon denen mehrere mit Microsoft Windows versehen sind, darunter: Windows -Skript -Host (WSH), Internet Explorer (Dh) und Internetinformationsdienste (Iis).[3] Darüber hinaus ist die VBScript -Hosting -Umgebung in andere Programme durch Technologien wie die Microsoft -Skriptsteuerung eingebettet (msscript.ocx).
Geschichte
VBScript begann im Rahmen der 1996 gestarteten Microsoft Windows -Skript -Technologien. Diese Technologie (die ebenfalls enthielt Jscript) wurde zunächst auf Webentwickler gerichtet. Während eines Zeitraums von etwas mehr als zwei Jahren stieg VBScript von Version 1.0 auf 2.0 und in dieser Zeit Unterstützung von Windows Systemadministratoren Suche nach einem Automatisierungswerkzeug leistungsfähiger als das Stapelsprache erstmals in den frühen 1980er Jahren entwickelt.[4] Am 1. August 1996, Internet Explorer wurde mit Funktionen veröffentlicht, die VBScript beinhalteten.[5]
In Version 5.0 wurde die Funktionalität von VBScript mit neuen Funktionen erhöht, einschließlich Reguläre Ausdrücke; Klassen; das Mit Aussage;[6] das Bewerten, Ausführen, und ExecuteGlobal Funktionen zur Bewertung und Ausführung von Skriptbefehlen, die während der Ausführung eines anderen Skripts erstellt wurden; ein Funktions-Zeiger-System über GetRef,[7] und Verteilt com (DCOM) Unterstützung.
In Version 5.5, Submatches[8] wurden zum hinzugefügt regulären Ausdruck Klasse in VBScript, um schließlich Skriptautoren zu ermöglichen, den Text in den Gruppen des Ausdrucks zu erfassen. Diese Fähigkeit war bereits in Jscript verfügbar gewesen.
Mit dem Aufkommen der .NET FrameworkDas Skriptteam entschied sich für die Umsetzung der zukünftigen Unterstützung für VBScript innerhalb ASP.NET Für Webentwicklung,[9] und daher würden keine neuen Versionen der VBScript -Engine entwickelt. Es würde sich fortan von Microsofts unterstützt Susting Engineering Team, die für Fehlerbehebungen und Sicherheitsverbesserungen verantwortlich sind. Für Windows -Systemadministratoren schlägt Microsoft vor Windows PowerShell. Die Skriptmotor wird jedoch weiterhin mit zukünftigen Veröffentlichungen von Microsoft Windows und IIS geliefert.
Umgebungen
Bei der kundenseitigen Webentwicklung in Microsoft eingesetzt Internet Explorer, Vbscript ist in der Funktion zu der Funktion zu JavaScript. Es wird verwendet, um ausführbare Funktionen zu schreiben, die in HTML -Seiten eingebettet sind oder von HTML -Seiten enthalten sind und mit dem interagieren Dokumentobjektmodell (DOM) der Seite, um Aufgaben allein in HTML auszuführen. Andere Webbrowser wie Feuerfuchs und Oper und vor kurzem Chrom Haben Sie keine integrierte Unterstützung für VBScript. Dies bedeutet, dass Entwickler in der Regel JavaScript in den meisten anderen Programmiersprachen wie VBScript wählen, wenn Client-Side-Skript- und Cross-Browser-Kompatibilität erforderlich ist.
VBScript wird auch für die serverseitige Verarbeitung von Webseiten verwendet, insbesondere bei Microsoft Aktive Server-Seiten (ASP). Die ASP -Motor- und Typbibliothek, Asp.dll, ruft auf vbscript.dll VBSScript -Skripte ausführen. VBScript, das in eine ASP -Seite eingebettet ist, ist in den Kontextschalter <% und%> enthalten. Das folgende Beispiel einer ASP-Seite mit VBScript zeigt die aktuelle Zeit im 24-Stunden-Format an, wird jedoch auch als Standardskript für Fehlermeldungen mit den Windows-Betriebssystemen verwendet.
<% Möglichkeit Explizit %> VBSScript -Beispiel
<% 'Erging die aktuelle Zeit ab jetzt () Funktion. 'An' = ', das nach einem Kontextschalter auftritt (<%), ist eine Kurzschrift 'Für einen Anruf bei der Schreibmethode des Antwortobjekts. Schwach Zeitwert : Zeitwert = Jetzt %> Die Zeit im 24-Stunden-Format ist <%=Stunde(Zeitwert)%>:<%=Minute(Zeitwert)%>:<%=Zweite(Zeitwert)%>.
VBScript kann auch verwendet werden, um Anwendungen zu erstellen, die direkt auf einer Workstation ausgeführt werden Microsoft Windows. Das einfachste Beispiel ist ein Skript, das das nutzt Windows -Skript -Host (WSH) Umgebung. Ein solches Skript befindet sich normalerweise in einer eigenständigen Datei mit der Dateierweiterung .VBS
. Das Skript kann auf zwei Arten aufgerufen werden: Wscript.exe wird verwendet, um die Ausgabe anzuzeigen und Eingaben über eine GUI zu empfangen, z. B. Dialog- und Eingangsfelder. Cscript.exe wird in a verwendet Befehlszeilenumgebung.
VBScript kann in zwei anderen Arten von Skriptdateien enthalten sein: Windows -Skriptdateien, und HTML -Anwendungen.
Eine Windows -Skriptdatei (WSF) wird nach XML gestaltet. Eine WSF -Datei kann mehrere VBS -Dateien enthalten. Infolgedessen bieten WSF -Dateien ein Mittel zur Wiederverwendung von Code: Eine Bibliothek mit Klassen oder Funktionen kann in einem oder mehreren gespeichert werden .VBS
Dateien, die in enthalten sein können .wsf
Dateien, sodass die Funktionalität modular wiederverwendet werden kann. Die Dateien haben Erweiterung .wsf
und kann mithilfe verwendet werden wscript.exe oder cscript.exegenau wie ein .VBS
Datei kann.
Eine HTML -Anwendung (HTA) wird nach HTML gestaltet. Die HTML in der Datei wird verwendet, um die Benutzeroberfläche zu generieren, und eine Skriptsprache wie VBScript wird für die Programmlogik verwendet. Die Dateien haben Erweiterung .hta
und kann mithilfe verwendet werden mshta.exe.
VBScript (und jscript) kann auch in einer Windows-Skriptkomponente verwendet werden, einer ActiveX-fähigen Skriptklasse, die von anderen aufgerufen werden kann Com-Verabbare Anwendungen.[10] Diese Dateien haben eine Erweiterung .wsc.
VBScript ist einfach zu erstellen und kann mit einem einfach zu verwendenden Texteditor wie Notepad codiert werden. Ein einfaches VBSCript, das von der gespeichert ist .VBS
Die Erweiterung kann auf einem Windows -System ausgeführt werden, indem Sie doppelt klicken.
Funktionalität
Sprachmerkmale
Die Sprache von VBScript wird auf Visual Basic modelliert und kann daher mit ähnlichen Kategorien überprüft werden: Verfahren, Kontrollstrukturen, Konstanten, Variablen, Benutzerinteraktion, Array -Handhabung, Datums-/Zeitfunktionen, Fehlerbehebung, mathematische Funktionen, Objekte, reguläre Ausdrücke, regelmäßige Ausdrücke, String Manipulation und so weiter.[11]
Im Folgenden finden Sie einige wichtige Einführungspunkte in die VBScript -Sprache von Microsoft
Ein "Prozedur" ist das Hauptkonstrukt in VBScript zum Trennen von Code in kleinere Module. VBScript unterscheidet zwischen einer Funktion, die ein Ergebnis in einer Zuweisungsanweisung zurückgeben kann, und eine Unterroutine, die nicht. Parameter sind positionell und können nach Wert oder Referenz übergeben werden.
Die Kontrollstrukturen umfassen die üblichen iterativen und bedingten DO-Schleifen, IF-Then-ELSE-Aussagen und Fallanweisungen mit einigen komplexeren Varianten, wie z.
Als Speicherhilfe bei der Codierung und sicherlich für die Lesbarkeit gibt es eine große Anzahl von Konstanten, z. und viele andere.
Variablen haben "Variante"Typ standardmäßig Typ, aber es ist möglich (und manchmal notwendig), einen bestimmten Typ (Ganzzahl, Datum usw.) mithilfe von Konvertierungsfunktionen (Cint, CDate usw.) zu erzwingen
Benutzerinteraktion wird über die Funktionen bereitgestellt Msgbox
und Eingabefeld
Dies liefert ein einfaches Dialogfeldformat für Nachrichten und Eingaben. Beide Funktionen zeigen Anlaufmeldungen an, wobei erstere eine Standardantwort zurückgeben und letztere einen von Benutzer gelieferten Text oder numerischen Wert zurückgeben. Für eine aufwändige GUI -Interaktion mit Kontrollen kann VBScript in Kombination mit HTML beispielsweise in einem verwendet werden HTML -Anwendung. Ereignisgesteuerte Formulare werden nicht wie in Visual Basic oder unterstützt Visual Basic für Anwendungen.
Namen sind nicht sensibel. Es wird jedoch als bewährte Verfahren des VBScript -Stils angesehen, konsequent zu sein und mit Bedacht zu profitieren.
VBSScript -Funktionen
Wenn der von der gehostet wird Windows -Skript -Host, VBScript bietet zahlreiche Funktionen, die für Skriptsprachen gemeinsam sind, aber nicht verfügbar sind Visual Basic 6.0. Diese Funktionen umfassen direkter oder einfacher Zugriff auf:
- Benannte und unbenannte Befehlszeilenargumente,
- Stdin und Stdout, was umgeleitet werden konnte,
- WSH.ECHO, das in die Konsole schreibt und nicht umgeleitet werden kann,
- WSH.EXITCODE, der aus DOS -Batch -Dateien oder durch den Prozess getestet werden kann, der die Skriptdatei aufgerufen hat.
- Netzwerkdrucker,
- Netzwerkaktien,
- Spezielle Ordner, z. Desktop, Favoriten, Mydokumente und so weiter,
- Netzwerkbenutzerinformationen wie Gruppenmitgliedschaft,
- Methoden zur Laufzeitausführung des zur Laufzeit definierten Textes: Evaly und Execute,
- Methoden zum Ausführen von Skripten auf Remote -Maschinen,
- Windows Management Instrumentation (WMI)
- Funktionalität zum Einbetten einer VBScript -Engine in andere Anwendungen unter Verwendung einer weithin bekannten Sprache.
CScript, der Befehlszeilenläufer, bietet Optionen für:
- Interaktiver oder Batch -Modus,
- Aufrufen des Debug -Modus aus der Befehlszeile,
- Fehlerberichterstattung einschließlich der Zeilennummer.
Zusätzliche Funktionalität
Dateisystemverwaltung, Dateiänderung und Streaming -Textvorgänge werden mit der Skript -Laufzeitbibliothek implementiert Scrrun.dll
. Dies liefert Objekte wie Dateisysteme, Datei und Textstream, die das Windows -Dateisystem dem Programmierer aussetzen.
Binärdatei und Speicher -E/A werden von der Klasse "adodb.stream" bereitgestellt, die auch für String -Bauherren verwendet werden kann (um eine übermäßige Verkettung von String zu vermeiden, die kostspielig sein kann) und um Byte -Arrays und -Saiten miteinander umzusetzen. Der Datenbankzugriff wird durch ermöglicht ActiveX -Datenobjekte (Ado) und die IIS Metabase kann mit der Funktion getObject () mit ausreichenden Berechtigungen manipuliert werden (nützlich, um Websites und virtuelle Verzeichnisse zu erstellen und zu zerstören). XML -Dateien und Schemas können mit dem manipuliert werden Microsoft XML Library Anwendungsprogrammierschnittstellen (msxml6.dll, msxml3.dll), mit dem auch Inhalte aus dem World Wide Web über die XMLHTTP- und ServerxmlHttp -Objekte abgerufen werden können (Klassenzeichenfolgen "msxml2.xmlhttp.6.0" bzw. "MSXML2.SERVERXMLHTTP.6.0").
Funktionalität kann auch über ActiveX -Technologien hinzugefügt werden. Sicherheitsbedenken haben dazu geführt, dass viele ActiveX -Steuerelemente im Internet Explorer -Prozess von Microsoft auf die schwarze Liste gesetzt wurden, die das bereitstellt Killbit Über monatliche Windows -Sicherheits -Updates, um gefährdete Microsoft- und Drittanbieter -Code zu deaktivieren.[12][13]
Programmierer können die Erweiterbarkeit über COM (ActiveX) -Module nutzen, um den Skript -Host und VBScript mit erforderlichen oder gewünschten Funktionen spezifisch auszurüsten. Die "vtool" -Komponente fügt beispielsweise eine Reihe von Dialogfenstern, Binärdateizugriff und andere Funktionen hinzu.[14]
Entwicklungswerkzeuge
Microsoft stellt routinemäßig keine IDE zur Verfügung ((Integrierte Entwicklungsumgebung) für VBScript, obwohl die Microsoft Skript Editor wurde mit bestimmten Versionen von Microsoft Office gebündelt.
Zu Debugging -Zwecken kann der Microsoft -Skript -Debugger weiterhin in aktuellen Windows -Versionen verwendet werden, obwohl das Tool seit Jahren nicht aktualisiert wurde. Der Benutzer kann Pausenpunkte im VBScript -Code festlegen, aber die Benutzeroberfläche ist mehr als ungeschickt.
Es gibt VBScript-Debugger bei Drittanbieter-Quellen.[15][16] und viele Textredakteure Angebot Satzstellung markieren für die Sprache.
Während der Ausführung gibt der Skript -Host, wenn ein Fehler auftritt, eine Meldung mit der Art von Fehler und der Anzahl der beleidigenden Zeile aus.
Verwendet
Obwohl VBScript eine allgemeine Skriptsprache ist, sind mehrere bestimmte Gebrauchsbereiche bemerkenswert. Erstens war es früher häufig bei Systemadministratoren in der Microsoft -Umgebung eingesetzt.[17], aber es wurde seitdem stark übertroffen von Power Shell. Zweitens ist VBScript die Skriptsprache für Micro Focus Unified Funktionstests, ein Testautomatisierungstool.[18] Ein dritter Bereich ist die Einführung von VBScript als interne Skriptsprache für einige eingebettete Anwendungen, wie z. Die hierarchischen DBMs Intersysteme Zwischenspeicher (Das hat seine Wurzeln in der Sprache MUMPS) unterstützt auch eine Implementierung von VBScript, Cache Basic, für den gespeicherten Programm von Programmiercodes.[19]
VBScript lässt mehrere nützliche Merkmale der vollständigen visuellen Basic aus, wie z. B. starke Typisierung, erweitertes Fehlerfallen und die Fähigkeit, eine variable Anzahl von Parametern an eine Unterprogramme zu übergeben. Die Verwendung ist jedoch relativ weit verbreitet, da es leicht zu erlernen ist und dass diejenigen, die Code in der Sprache implementieren, keine Lizenzgebühren an Microsoft zahlen müssen, solange die Marke VBScript -Marke anerkannt wird. Wenn eine Organisation lizenziert Visual Basic für Anwendungen (VBA) Von Microsoft haben Unternehmen wie Autodesk, StatSoft, Great Plains Accounting und Visio (anschließend von Microsoft erworben) die vollständige VBA-Code-Schreib- und Debugging-Umgebung mit seinem Produkt neu verteilt.
VBScript wird anstelle von VBA als Makrosprache von Outlook 97 verwendet.
VBScript kann effektiv zur Automatisierung von täglichen Büroaufgaben sowie zur Überwachung in der Windows-basierten Umgebung verwendet werden. Es kann auch in Zusammenarbeit mit ADODB verwendet werden ActiveX -Datenobjekte (ADODB) für eine effektive Datenbankkonnektivität.
VBScript kann auch zum Erstellen verwendet werden Malware und Viren wie die ICH LIEBE DICH Wurm, der sich durch E -Mail -Anhang in Outlook 97 ausbreitete und Milliarden von Dollar kostete.
Siehe auch
- Apfelkript
- FastTrack Scripting Host
- HTML Components
- JavaScript
- Jscript .net
- Jscript
- Perlscript
- Windows PowerShell
- Windows -Skriptdatei
Verweise
- ^ WSH -Versionsinformationenauf msdn
- ^ VBSScript -Versionsinformationenauf msdn
- ^ Was ist VBScript?in der MSDN -Bibliothek
- ^ 86-dos
- ^ "Die Geschichte des visuellen Basis". www.johnsmiley.com.
- ^ Visual Basic Scripting Edition: mit Anweisungauf msdn
- ^ GetRef -Funktionauf msdn
- ^ Visual Basic Scripting Edition: Submatches -Sammlungauf msdn
- ^ Was ist mit VBScript?im Artikel Einführung jscript .net Von Andrew Clinick von der Microsoft Corporation in der Skriptklinik zu MSDN (14. Juli 2000)
- ^ Einführung von Windows -Skriptkomponentenauf msdn
- ^ "VBScript -Funktionen". msdn.microsoft.com.
- ^ "So verhindern Sie, dass ein ActiveX -Steuerelement im Internet Explorer ausgeführt wird". Microsoft. 2007-08-24. Abgerufen 2009-06-29.
- ^ "Microsoft Security Advisory (960715): Rollup für ActiveX Kill Bits aktualisieren". Microsoft. 2009-01-17. Abgerufen 2009-06-29.
- ^ "Vtool" -Skriptkomponente - GUI und funktionale Verbesserungen für WSH/VBS
- ^ "VBSEDIT - VBSScript -Editor mit Debugger - VBS -Editor". www.vbedit.com.
- ^ Corp., Spline Technologies. "Splinetech VBS -Debugger, VBScript -Debugger. Debugug VBS". www.remotteebugger.com.
- ^ Skriptzentrum, Microsoft -Website -Targeting System Administration Scriptors
- ^ "Quick Test Professional - Grundlagen von VBScript".
- ^ "Caché für unstrukturierte Datenanalyse". Intersysteme. Abgerufen 2018-09-24.
Externe Links
- VBScript -Sprachreferenz, Microsoft Docs
- Ist VBScript tot?, isvbscriptdead.com
- VBSScript -Befehle, SS64.com
- VBScript-Anleitungen und Beispiele, SS64.com
- WMI -Übersicht, Microsoft TechNet