KIX Basics

KIX ist eine Skritpsprache, die sich unter Anderem sehr gut für Logonskripte eignet. Der Sprachumfang von KIX reicht an die Möglichkeiten von VBScript oder JScript heran, und bietet zudem viele Makros, die speziell in Logonskripten genutzt werden können. In einem KIX-Skript sind viele Kommandos und Funktionen zur Stringverarbeitung etc. oder zum Ansprechen der COM Schnittstellen von Windows nutzbar.

Um ein KIX-Skript ablaufen zu lassen, reicht es wenn das Programm Kix32.exe im Pfad bzw. für Logonskripte im Netlogon-Share eines Controllers liegt.
Eine aktuelle Version kann hier heruntergeladen werden.


In der folgenden Tabelle sind einige grundlegende Code Fragmente eines KIX-Skripts erklärt.

;Kommentar

? "Ausgabe auf die Konsole"

Eine Kommentarzeile wird in einem KIX-Skript mit dem Strichpunkt ; markiert
Text wird mit ? "Ausgabetext" auf die Konsole ausgegeben.
? ? "Textausgabe mit vorangehendem Carriage Return"
$myVar = "fünf"
$myCount = 0
DIM $myArr[10]

KIX kann natürlich mit (dimensionierten) Variablen umgehen.
:MARK
...
Return

Mit GOSUB "MARK" kann in einem KIX Skript zu einer Marke gesprungen werden. Das entspricht in etwa dem Aufruf einer SubProcedur(), da mit RETURN ein Rücksprung zur Skriptzeile nach dem GOSUB erfolgt. Eine Marke kann auch mit GOTO ohne Return angesprungen werden.
FUNCTION myFunc(Parameter)
...
$myFunc = "Returnwert"
EndFunction

In einem KIX-Skript können auch eigene Funktion geschrieben werden, die Parameter erhalten und einen Rückgabewert liefern.
IF @ERROR = 0
...
EndIf
Die meisten internen Funktionen liefern einen Error Code zurück, der über das Makro @ERROR abgefragt werden kann.
SELECT
CASE
...
CASE 1
....
EndSelect

FOR EACH $var IN $vars
...
Next

Statements wie If EndIf, For Next, Select Case EndSelect etc. sind in Kix bekannt.
@HomeDir
@HostName
@Date
@LDrive

Einige der vielen Makros, die KIX zur Verfügung stellt.
Das Makro @LDrive liefert z.B. \\Logonserver\Netlogon zurück.

Die folgenden KIX-Skripte können als Beispiele für eigene Skripte verwendet werden. Für eine fehlerfreie Ausführung der Skripte kann selbstverständlich keine Haftung übernommen werden.

Logon.kix KIX Logonskript
Alle Benutzer bekommen ein generisches Logon.bat zugewiesen.
In logon.bat steht der Aufruf des KIX-Skripts:
Start /max cmd /c "color f0 & %0\..\kix32.exe logon.kix"
map_drives.kix KIX Skript, um Laufwerke zu verbinden.
Diese Skript wird aus Logon.kix heraus aufgerufen.