Mini-Workshop: VisualBasic-Skripte mit dem Microsoft Script Editor debuggen

Sie schreiben VB-Skripte mit dem Microsoft Script Editor (MSE). Syntaxfehler meldet der Windows Scripting Host (WSH) spätestens beim Einsatz des Skriptes und gibt meist hilfreiche Fehlerhinweise aus. Inhaltliche Ungereimtheiten hingegen erzeugen nur ein falsches Ergebnis. Deshalb möchten Sie das Verhalten Ihrer Skripte mit einem Debugger prüfen.

1. Debugger installieren: Um dem Programmablauf eines Skripts zu folgen, können Sie den integrierten Debugger des MSE verwenden. Die Office-Standardinstallation richtet dieses Werkzeug allerdings nicht ein, sodass Sie es erst nachrüsten müssen. Dafür benötigen Sie die Installations-CD von MS Office. Werfen Sie einen Blick in das Menü »Debuggen«: Falls es ausschließlich den Befehl »Webdebugger installieren« enthält, klicken Sie darauf. Den nun folgenden Hinweis auf einen erforderlichen Neustart des MSE bestätigen Sie mit »Ja« – danach startet das Setup. Anschließend beenden Sie MSE und starten ihn neu.
2. Debugger aktivieren: Der MSE bietet keinen Befehl, um ein Skript in den Debugger zu laden. Vielmehr muss das Skript den Debugger starten. Sie finden das benötigte Programm WSCRIPT.EXE im Windows-Ordner. Es lässt sich mit zwei Befehlszeilenschaltern steuern: »//X« aktiviert den Debugger sofort für das gesamte Skript. »//D« startet den Debugger, sobald der WSH im Skript einen bestimmten Befehl erreicht. In VBSkript lautet er »stop«, in JSkript »debugger«. Erzeugen Sie auf Ihrem Desktop eine Verknüpfung auf WSCRIPT.EXE und ergänzen Sie die Befehlszeile um den Schalter »//D« oder »//X«.
3. Skript debuggen: Per Drag&Drop können Sie nun eine beliebige Skriptdatei auf das neue Desktop-Symbol ziehen – sie startet dann den Debug-Modus mit dem Dialog »Just-In-Time-Debuggen«. Markieren Sie den Eintrag »Neue Instanz von Microsoft Script Editor« und klicken Sie auf »Ja«. Der MSE startet und lädt das Skript. Klicken Sie im Dialog »In Remote Prozeduraufruf springen« auf »OK« – Sie können dann im MSE Haltepunkte definieren, einen Befehl des Skriptes nach dem anderen ausführen, die Inhalte von Variablen betrachten und alle anderen nützlichen Funktionen des Debuggers nutzen.