Hallo Zusammen
Wir
versuchen zurzeit in unserer Firma alle Server so einzustellen dass sie
eine art Login Meldung ausgeben um dem Benutzer anzuzeigen auf welchen
Server er sich befindet
und welche Spezifikationen dieser besitzt.
Auch ein Wert aus einer XML datei soll dazu ausgelsen werden. Die XML
datei ist eine sich ständig verändernde Datei die von unserer
hauseigenen
Software erstellt wird. Entahlten sind darin die aktuellsten
installierten Patches. Unter Linux ist alles überhaupt kein Problem aber
unter Windows haben wir bisher nur die möglichkeit gefunden
die
Informationen über ein Tool namens BGinfo anzeigen zu lassen. Problem
hierbei ist das wir zum auslesen von Werten aus einer XML-Datei ein
kleines VB-script schreiben müssen welches dann mit BGinfo ausgeführt
wird.
Das Problem das wir nun haben ist 1. das sich kaum jmd bei uns mit VB-scripts auskennt und 2. Das der Wert den wir mittels echo "Patch.getAttribute..." auslesen lassen möchten mehr als nur einmal vorkommt.
Im Grunde immer dann wenn eine neue Patchversion am ende der XML-Datei angehangen wird.
BGinfo
geht nun hin startet das VB script und listet dann ALLE patches die
Installiert wurden sind.
Was also benötigt wird ist eine Möglichkeit,
dass nur der letzte Wert ausgegeben wird der mittels getAttribute
ausgelsen wird.
Die Patch.xml ist wie folgt aufgebaut:
und das VB-Script so:
Ich hoffe echt das dies irgendwie geht
Wir
versuchen zurzeit in unserer Firma alle Server so einzustellen dass sie
eine art Login Meldung ausgeben um dem Benutzer anzuzeigen auf welchen
Server er sich befindet
und welche Spezifikationen dieser besitzt.
Auch ein Wert aus einer XML datei soll dazu ausgelsen werden. Die XML
datei ist eine sich ständig verändernde Datei die von unserer
hauseigenen
Software erstellt wird. Entahlten sind darin die aktuellsten
installierten Patches. Unter Linux ist alles überhaupt kein Problem aber
unter Windows haben wir bisher nur die möglichkeit gefunden
die
Informationen über ein Tool namens BGinfo anzeigen zu lassen. Problem
hierbei ist das wir zum auslesen von Werten aus einer XML-Datei ein
kleines VB-script schreiben müssen welches dann mit BGinfo ausgeführt
wird.
Das Problem das wir nun haben ist 1. das sich kaum jmd bei uns mit VB-scripts auskennt und 2. Das der Wert den wir mittels echo "Patch.getAttribute..." auslesen lassen möchten mehr als nur einmal vorkommt.
Im Grunde immer dann wenn eine neue Patchversion am ende der XML-Datei angehangen wird.
BGinfo
geht nun hin startet das VB script und listet dann ALLE patches die
Installiert wurden sind.
Was also benötigt wird ist eine Möglichkeit,
dass nur der letzte Wert ausgegeben wird der mittels getAttribute
ausgelsen wird.
Die Patch.xml ist wie folgt aufgebaut:
XML-Quellcode
- <patches>
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- <patch version="blaaaaaa" name="blaaaa" user="blaaaaa" date="blaaaaa">
- </patch>
- </patches>
und das VB-Script so:
Visual Basic-Quellcode
- 'Pfad = <pfad zur Server.xml>
- Set doc = CreateObject("Msxml2.DOMDocument.6.0")
- doc.async = False
- If doc.load("<Pfad zur Patch.xml>") Then
- 'hier XPath 1.0 benutzen, um auf Knoten zuzugreifen z.B.
- For Each Patch in doc.selectNodes("//patch")
- If not Patch.getAttribute("version") = "@patch_name@" THEN
- Echo Patch.getAttribute("version")
- End If
- Next
- Else
- Echo doc.parseError.reason
- End If
Ich hoffe echt das dies irgendwie geht