Kurzbeschreibung
Parameter Funktionsweise
Ein/Ausgänge Limitierungen
Querverweise Beispiele
 | Kurzbeschreibung
Das Modul ShellNT ermöglicht einen
Zugriff auf die Kommandozeile (über Kommando-Shell) des lokalen NT-Rechners (inkl.
Authentifizierung). |
 | Parameter
 | Parameter: Parameterquelle
intern, extern oder Datenbank. |
 | Startinfo anzeigen: Nachdem eine
Kommando-Shell geöffnet wurde, wird der Infotext angezeigt. |
 | Authentifizierung: Der Benutzer
muß Anmeldename und -kennwort angeben.
 | Versuche: Nach dieser Anzahl an
fehlgeschlagenen Versuchen wird die Kommando-Shell wieder geschlossen. |
 | Basispfad des Benutzers verwenden:
Wenn das Benutzerkonto auf dem lokalen Rechner liegt (nicht auf einem anderen
Domänen-Server), kann automatisch in sein Benutzerverzeichnis gewechselt werden. Dieses
Verzeichnis wird im Benutzer-Manager bei den Eigenschaften des Benutzers angegeben:
Benutzereigenschaften - Profil - Basisverzeichnis. |
|
 | Startpfad: Ist die
Authentifizierung nicht eingeschaltet, bzw. der Basispfad ungültig, wird in dieses
Verzeichnis gewechselt. |
 | ASCII in ANSI konvertieren: Die
Kommando-Shell verwendet ASCII-Kodierung. Um eine richtige Darstellung der Umlaute (in
Windows-Programmen, z.B. Telnet) zu bekommen, ist die Konvertierung einzuschalten. |
|
 | Funktionsweise
Mit diesem Modul können gleichzeitig bis zu 1024 Kommando-Shells zu dem
lokalen Computer geöffnet werden. Eine Kommando-Shell ist vergleichbar mit einer
Eingabeaufforderung. Jede Kommando-Shell wird durch eine eindeutige ID (0-1023)
gekennzeichnet.
Das Modul ist - bis auf die Authentifizierung - identisch zu Shell.
Um die Authentifizierung zu benutzen, sind vorher einige Einstellungen im
Benutzer-Manager von Windows NT vorzunehmen. Dazu öffnen Sie den Benutzer-Manager (Start
- Programme - Verwaltung (Allgemein) - Benutzer-Manager). Klicken Sie anschließend auf
Richtlinien - Benutzerrechte. Dort aktivieren Sie den Punkt "Weitere Benutzerrechte
anzeigen". Bei den folgenden Rechten sind die Benutzer einzutragen, die sich mittels
Authentifizierung am Rechner anmelden können sollen:
Als Teil des Betriebssystems handeln
Ersetzen eines Tokens auf Prozeßebene
Außerdem müssen die Benutzer zur Gruppe der lokalen Administratoren gehören. Das
ist ebenfalls im Benutzer-Manager einzutragen.
Um eine Kommando-Shell zu öffnen, ist am Open-Eingang eine neue ID zu schicken. An
den Ausgängen ID und Data wird die Ausgabe der Command-Shell (Anmeldeaufforderung,
Befehlsausgaben, ...) geschrieben. An den ID und Data-Eingängen werden die Befehle
geschickt (z.B. Benutzername, Paßwort, Kommando). Eine offene Shell kann über den
Close-Eingang geschlossen werden, oder auch aus der Shell heraus (Exit-Kommando, siehe
MSDOS-Beschreibung). Nach dem Schließen wird am Close-Ausgang die ID ausgegeben. Beim
einem Fehler wird die Shell auch geschlossen und am Fehlerausgang wird der Fehlertext
ausgegeben, bzw. wenn dieser nicht verdrahtet ist, wird der Text in einem Fehlerfenster
angezeigt und der Signalgraph gestoppt.
Da das Modul ShellNT keine Tastatureingaben wieder ausgibt, ist für die Ausgabe
selbst zu sorgen (lokales Echo).
Die Kommando-Shell gibt alle Eingaben an den Kommandointerpreter von Windows
weiter, d.h. alle Befehle und Kommandos sind in der Befehlsreferenz von Windows
nachzulesen. Übliche Befehle sind: dir, copy, del, md, rd, cd, ...
Es können in der Kommando-Shell auch Programme gestartet werden (z.B. chkdsk,
explorer). Jedoch ist bei Programmen mit graphischer Oberfläche darauf zu achten, daß
sie nach dem Start von der Kommando-Shell aus nicht mehr bedient oder beendet werden
können. Nur textbasierte Programme, die keine graphische Ausgabe haben, können damit
gesteuert werden. |
 | Ein-/Ausgänge
Eingänge
|
EXT, DB |
SWORD{show_startinfo},
SWORD{authentification}, SWORD{login_trys}, SWORD{use_user_path}, UBYTE[]{start_path},
SWORD{ascii2ansi} |
Parametrierung des Moduls
über externe Quellen wie ParamConv oder DBLoad |
Open |
TYPEINFO{TypeInfo}
SWORD[]{SCALAR} |
Nummer der zu öffnenden
Kommando-Shell |
Close |
TYPEINFO{TypeInfo}
SWORD[]{SCALAR} |
Nummer der zu
schließenden Kommando-Shell |
ID |
TYPEINFO{TypeInfo}
SWORD[1]{SCALAR} |
Shell-ID |
Data |
TYPEINFO{TypeInfo}
UBYTE[]{Text} |
Shell-Kommando |
Ausgänge |
Close |
TYPEINFO{TypeInfo}
SWORD[]{SCALAR} |
Nummer der geschlossenen
Kommando-Shell |
ID |
TYPEINFO{TypeInfo}
SWORD[1]{SCALAR} |
Shell-ID |
Data |
TYPEINFO{TypeInfo}
UBYTE[]{Text} |
Shell-Ausgabetext |
Error |
TYPEINFO{TypeInfo}
UBYTE[]{Text} |
Fehlertext |
|
 | Limitierungen
Dieses Modul funktioniert nicht unter Win95 und Win98, sondern nur
unter Windows NT und Windows 2000. |
 | Querverweise
TCPServer, Shell,
Windows-NT Referenz, telnet-Befehl (Windows) |
 | Beispiele
Dieses Beispiel zeigt einen einfachen Signalgraphen, der eine Remote-Shell zur
Verfügung stellt. Der TCPServer ist auf Kanal 23 eingestellt (Telnet) und wartet auf
Verbindungsanfragen. Wenn (z.B. über Telnet) eine Anfrage gemacht wird, wird über den
Open-Eingang eine Kommando-Shell erzeugt. Die Ausgabe der Shell wird über den TCPServer
zurück zum Client geschickt, Befehle vom Client über den TCPServer zum ShellNT Modul
weitergeleitet. Zu Testen ist dieses Beispiel mittels dem Programm telnet: telnet <Computername,
auf dem der Signalgraph läuft> (Lokales Echo nicht vergessen).
|
|