Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Anleitung Entwicklung KiXtart

... HowTo... Anmeldeskript mit Kix erstellen -Part 2- Mehrere Netzwerke

Mitglied: gogoflash

gogoflash (Level 2) - Jetzt verbinden

11.12.2005 um 04:32 Uhr, 26047 Aufrufe, 1 Kommentar

Nachdem im ersten Tutorial auf die Grundlagen eingegangen wurde. Jetzt einige Erweiterung und Verschönerungen. ZB Abhand der IP-Adresse unterschiedliche Skripte ausführen. Macht sich sehr gut einem AD-Directory mit unterschiedlichen Subnetzen.Anhand diesem Beispiel, werden das Umwandeln eines Strings in ein Array gezeigt und die Nutzung von Case...Select, um verschachtelte IF Bedingungen zu vermeiden.

Wir haben zum Beispiel 2 Netzwerke.
Das eine sei mal Netzwerk A mit 192.168.1.0 (255.255.255.0), das andere Netzwerk B mit 192.168.2.0 .
Jetzt möchten wir, dass im Netzwerk A das Skript Skript A ausgeführt wird und im Netzwerk B Skript B.

Grundlagen:

IP-Adresse:


Die erste IP-Adresse steht unter Kix mit der Variablen @ipadress0 zur Verfügung.
Für alle weiteren @ipadressX mit X Element {0,1,2,3}. Mehr kann man nicht auslesen. Aber wer hat mehr als 4 Ip-Adressen.

IP-Adresse in ein Array umwandeln.

Das bewerkstelligt man mit Split.
01.
Split("string","delimiter",count)
Schauen wir uns mal das Ding in Aktion an.
$ip0 = Split (@ipaddress0,".",4) schreibt alle Elemente, die durch einen Punkt getrennt sind, in eine Array der Größe 4 $ip0.
Jetzt haben wir ein Array von 4 Zeichen. Mit $ip0 [0] kann man auf das erste Byte der IP-Adresse zugreifen.
$ip0 [2] auf das 3 Byte. Genau dieses brauchen wir um die beiden Netze zu unterscheiden.

Der gesamte Befehlt sieht dann so aus.
01.
; Wenn wir eine IP-Adresse haben, dann wird gesplittet. Ohne IP ist der gesamte Kram witzlos. 
02.
If @ipaddress0 <> "" 
03.
 $ip0 = Split (@ipaddress0,".",4) 
04.
EndIf

Select Case ... Endselect

Statt jetzt mehere IF Ausdrücke zu schachteln, nehmen wir diese Konstruktion.
Und $ip0 [2] zum unterscheiden.
01.
Select 
02.
    Case ($ip0 [2] == "1") 
03.
        Call "SkriptA.kix" 
04.
    Exit 
05.
    Case ($ip0 [2] == "2") 
06.
        Call "SkriptB.kix" 
07.
    Exit 
08.
EndSelect

Message Box:

Möchte man eine Infobox erscheinen lasse.
So benutzt man den Befehl messagebox.
Definiert ist dieser messagebox("Nachricht","Titel",Stil,time-out)
Nachricht und Titel brauchen wohl nicht kommentiert zu werden.
Mit Stil kann man angeben, welche Buttons die Messagebox zur Verfügung stellt (OK/Cancel/Yes/No/Retry), welches Icon in der Box angezeigt wird (Fragezeichen/Informationssymbol/Stopsymbol). Aber genaueres in der KIX Anleitung.

Mit messagebox("Ich weiß nicht, was soll es bedeuten","Info",016,0) wird ein Fenster geöffnet mit dem Titel Info. Nur mit einem OK Button (0) und einem Stopsysmbol (16), der Time-out davon ist 0. (Null bedeutet kein time-out)


5) Was wenn Ip-Adresse nicht den obigen Fällen entspricht (Fehlermeldung errorcode 1).
in diesem Fall wird Case 1 genutzt.
01.
Case 1 
02.
 $key = MessageBox ( 
03.
; die Chr Befehle sind für die Formatierung gedacht, und fügen Leerzeichen (+Chr(9) und ;Zeilenumbruch +Chr(10) ein. 
04.
"User:"+Chr(9)+$user+Chr(10)+ 
05.
"Host:"+Chr(9)+$host+Chr(10)+ 
06.
"Datum:"+Chr(9)+$date+Chr(10)+Chr(10)+ 
07.
 "kein Netzwerk vorhanden !?!"+Chr(9)+Chr(10)+Chr(10)+ 
08.
 "Logon Script wird abgebrochen"+Chr(9)+Chr(10)+ 
09.
 " ","Netzwerk INFO",016,0) 
10.
Exit 
11.
 
12.
$user = @fullname 
13.
$host = @hostname 
14.
$date = @day+" "+@date 
15.
sollte man vorher definieren.

Anderes Kix_Skript ausführen

Mit Call SkriptA.kix


Zusammenfassung (Version 2 des Anmeldeskriptes):

01.
;Abbrechen verhindern 
02.
Break off 
03.
;Console Verstecken 
04.
SetConsole("Hide") 
05.
;Variablen löschen 
06.
FlushKB 
07.
 
08.
; Setzen einiger Variablen, Wird für die Fehlermeldung gebraucht 
09.
$user = @fullname 
10.
$host = @hostname 
11.
$date = @day+" "+@date 
12.
 
13.
;Auslesen der Ip-Adresse 
14.
If @ipaddress0 <> "" 
15.
;Ip-Adresse in ein Array umwandeln $ip [i] für i < 4 
16.
 $ip0 = Split (@ipaddress0,".",4) 
17.
  Else 
18.
   $ip0 =0,0,0,0 
19.
EndIf 
20.
 
21.
Select 
22.
Case ($ip0 [3] == "1") 
23.
Call "SkriptA.kix" 
24.
Exit 
25.
 
26.
Case ($ip0 [3] == "2") 
27.
Call "SkriptB.kix" 
28.
Exit 
29.
 
30.
; Für alles was oben nicht definiert ist, eine kleine Fehlermeldung 
31.
Case 1 
32.
 $key = MessageBox ( 
33.
 
34.
 
35.
"User:"+Chr(9)+$user+Chr(10)+ 
36.
"Host:"+Chr(9)+$host+Chr(10)+ 
37.
"Datum:"+Chr(9)+$date+Chr(10)+Chr(10)+ 
38.
 "kein Netzwerk vorhanden !?!"+Chr(9)+Chr(10)+Chr(10)+ 
39.
 "Logon Script wird abgebrochen"+Chr(9)+Chr(10)+ 
40.
 " ","Netzwerk INFO",016,0) 
41.
Exit 
42.
EndSelect
Im nächsten Tutorial geht es, dann um die Behandlung von Errorcodes und die Variablen die KIX anbietet. ($Username;$DOmainname usw)


Gruß Miguel
Mitglied: doemsle
10.11.2009 um 17:47 Uhr
Super Tutorial!

Beim Umwandeln der IP-Adresse in einen Array muss ich der Vollständigkeit halber noch was hinzufügen.
Die IP-Adresse 192.168.10.20 wurde bei mir wie folgt ausgegeben:
192.168. 10. 20
Die Select-Abfrage sieht deshalb bei mir so aus:
Case ($ip0 [2] == " 10")
Kleines aber wichtiges Detail

Gruss
doemsle
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
Eine Wählverbindung erstellen und an mehrere Clients verteilen
Anleitung von Alex-123Windows Netzwerk4 Kommentare

Wir haben bei uns im Hause das Problem, dass bei der Einrichtung eines neuen Tablet PC's für den Außendienst ...

Sicherheit
Mehr Sicherheit für Paypal, ebay und Amazon durch 2-Faktor-Authentifizierung
Tipp von DerWoWussteSicherheit8 Kommentare

Aus der Rubrik "Hätten Sie's gewusst?": Es gibt eine kostenlose Möglichkeit, Paypal-Logins weitaus sicherer zu gestalten - wohl schon ...

Windows Netzwerk
Heimnetzgruppe erstellen und Probleme mit VMWare
Erfahrungsbericht von hanni007Windows Netzwerk

Hallo liebe Community, seit einigen Tagen saß ich nun an einem Problem und wusste auf Teufel komm raus nicht ...

Windows Installation
Wie erstelle ich ein an meine Bedürfnisse angepasstes Installationsimage von Windows?
Anleitung von tomolpiWindows Installation14 Kommentare

Heute möchte ich zeigen, wie man sich eine Windows-Installation an seine Bedürfnisse anpasst. Später wird diese alle Updates, Software ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Windows Server
DNS Forwarding an andere Domäne
Frage von detox91Windows Server9 Kommentare

Hallo, für Testzwecke haben wir bei uns eine zweite Windows Domäne (B.local) aufgebaut, welche komplett unabhängig und isoliert der ...