Zum Inhalt springen.
Zum Seitenanfang springen.
Du befindest Dich genau hier:

Home > Computer > Coding > Windows Script Host (WSH)

.

Windows Script Host (WSH):

Prozesse

Mit dem WSH lassen sich wiederkehrende Aufgaben automatisch erledigen. MS-DOS bietet diese Möglichkeit mit Hilfe von Batchfiles, mit den vom WSH interpretierten Programmiersprachen VBScript und JScript ist aber mehr möglich und außerdem sehen die Dialogschaltflächen erheblich netter aus. Vergleichbares auf Mac OS X wäre dann wohl der Automator bzw. AppleScript.

Zum Einstieg wird nicht mehr als ein Texteditor benötigt. Als kleines Beispielscript habe ich mir das einbinden eines Netzlaufwerkes gewählt, was unter DOS mit net use erledigt würde. Eine mit Passwort versehene Netzwerkfreigabe wird eingebunden, anschließend werden alle verbundenen Netzlaufwerke aufgezählt. Sollte das Einbinden nicht klappen, wird eine selbst definierte Fehlerroutine abgearbeitet, in diesem Fall eine Fehlermeldung.

Der Quelltext kann direkt in den Texteditor (z.B. Notepad) eingegeben werden. Als Dateiendung muss dann lediglich vbs statt txt benutzt werden, schon lässt sich das Programm ausführen. Der Quelltext für das kleine Beispiel sieht so aus: Set wn = WScript.CreateObject("WScript.Network")
Set laufwerke = wn.EnumNetworkDrives

msgbox "Das einbinden der Laufwerke kann einige Sekunden dauern.",vbInformation,"Netzlaufwerke verbinden"

on error resume next

wn.MapNetworkDrive "m:", "\\192.168.1.200\dokumente", False, "Gast", "Geheim"

If Err = 0 Then
MsgBox "Netzlaufwerk erfolgreich eingebunden."
Else
msgbox "Fehlernummer: " & err.number & vbcr & "Fehlerort: " & err.source & _
vbcr &"Beschreibung: " & err.description,vbCritical,"Probleme"
End If
err.clear

For i = 0 to laufwerke.count - 1 step 2
liste = liste & "Laufwerk: " & laufwerke.item(i)
liste = liste & " Quelle: " & laufwerke.item(i+1) & vbcr
Next

msgbox "Verbundene Laufwerke:" & vbcr & liste,vbInformation,"Netzwerktest"

Weiterführende Informationen zum Windows Script Host hat Sebastian Koch wunderbar aufbereitet.