Computer Informationen Auslesen und in eine Notes DB schreiben. Vorschläge?

  • Liebe User,


    ich suche eine professionelle Methode zur Auslesung von PC Informationen. An Informationen benötige ich:


    -Betriebssystem des PCs
    -ServicePack Version
    -Welche Patches installiert sind


    Wichtig: Diese Informationen möchte automatisch in einer Logfile haben, damit ich diese Logfile in einer Datenbank extrahieren kann.


    Ich möchte also eine Notes DB die all diese Informationen beinhalten soll. Die muss ich natürlich noch erstellen.. Weiss zwar noch nicht ganz wie, aber ich versuch es.


    Menge der PCs: ca. 15.000 Stück.


    Kennt jemand eine Notes Lösung dafür? Vielleicht sogar kostengünstige/kostenlose?



    Meine bisherigen Versuche: Batch-Datei zur Erstellung einer info.txt mit PC Infos


    1. Batch-datei "myPC.bat" erstellt.

    Code
    @echo off
    C:\Programme\Gemeinsame Dateien\Microsoft Shared\MSInfo\msinfo32.exe 
    
    
    /report c:\info.txt


    2. info.txt wurde erstellt


    Wie kann ich nun die richtigen Zeilen in der txt-datei ansprechen und in eine Notes DB speichern?


    Ich bin für jede Hilfe dankbar!


    Gruß,


    Aspirin

    • Offizieller Beitrag

    Du könntest noch die Registrie auslesen (frage mich jetzt aber nicht an welchen Stellen die Infos stehen, ich müsste auch erst suchen gehen) oder die Win-Api dürfte da auch weiterhelfen.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Mit der Methode Import lässt sich die komplette txt-Datei in ein Richtext-Feld importieren, dort kannste dir mit findstring (und anderen Stringfunktionen) die einzelnen Teile rausextrahieren.


    Denke mal sehr aufwendig (je nach Anzahl der Daten) aber lösbar und kostenlos. Ich weiss natürlich nicht wie performant das ganze dann ist.

  • Zitat


    DaMike schrieb:
    Mit der Methode Import lässt sich die komplette txt-Datei in ein Richtext-Feld importieren, dort kannste dir mit findstring (und anderen Stringfunktionen) die einzelnen Teile rausextrahieren.


    Danke euch für die Antworten.


    Wie könnte so eine Import Methode und Findstring code technisch aussehen? Meine Script Schulung kriege ich leider erst im Dezember... Kann nur Lotus Formular.


    Danke euch.

    • Offizieller Beitrag

    schau dir mal folgende Sachen in der Designer-Hilfe an beachte auch die Beispiele.


    Line Input # statement ... zeilenweise einlesen
    Instr ... Auffinden von Zeichen in einem String
    Left, Right. Mid, Split ... um die Strings auseinander zu nehmen


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Hallo Aspirin,


    ich habe es wie folgt realisiert:


    Ein interner Programmierer hat ein DLL in Netz gefunden die alle infos ausliest. Mit den Daten erstellt er eine Mail die entsprechend formatiert ist. Die Mail wird zum NotesServer in eine Mailin DB geschickt.
    Dort wartet ein Agent. Er liest die Mail aus und erkennt anhand der Inventarnummer (einmalig in einer txt Datei auf jedem Rechner eintragen) um welchen PC es sich handelt und trägt die Informationen in das entsprechende Inventardokument ein.


    Die EXE wird bei jedem Booten gestartet. Da sie auch Speichermodule, Grafikkarten, Biosversion, installierte Software u.v.m. ausliest, sieht man genau wann jemand was an seinem Rechner dreht.


    Das ganze ist kostenlos und absolut transperent.


    In Zukunft will ich noch eine Historie einbauen, die im Inventardok angezeigt wird. Im Moment muss ich noch die Mails durchschauen.


    Vieleicht ist diese Idee auch was für dich.


    Gruß
    René

    nichts ist unmöglich, aber auch gar nichts wenn man genug Zeit und Geld hat

  • Diali, danke Dir!! Ich bin schon am rumfuchteln :)


    Rene


    Das ist ne coole Lösung! Um welche DLL handelt es sich denn? Wäre es vielleicht mögliche diese Lösung zu erhalten?


    DLL + exe + nsf ? :) Ein Versuch ist es ja wert :)

  • ...Du kannst die Systemwerte auch per Lotus Script auslesen. Wenn Du das Script in der Angefügten Datei als neue Skripti Bibliothek anlegst dann kannst Du die darin enthaltenen Methoden verwenden. Vielleicht ist das was Du suchst ja mit dabei.

    [size=x-small]
    Computer sind da um zu rechnen!
    Nicht um Ausreden wie: "Ich kann nicht durch Null teilen!", auf den Bildschirm zu schreiben.
    [/size]

  • hi, danke!! wohin schreibt er die Infos? Ich hab es mal Agent in eine leere DB eingefügt.. Wo und wie kann ich mir die Daten irgendwo reinschreiben lassen?

  • ...die Infos kannst Du ganz normal, per Script-Metode, auslesen (musst Dir halt den jeweiligen Funktionsnamen und die Eigenschaften aus dem Skript rauslesen) und dann hinschreiben wo Du möchtest. Z.B. in eine neue Mail oder eine vorgefertigte Sysinfo Maske.


    Edit: Dieses Script in einen Agenten einzufügen macht IMHO keinen Sinn da jeweils nur einzelne Informationen abgerufen werden. Ausserdem hast Du nicht die Möglichkeit es per "USE%" in Deine anderen Gestaltungselemente einzubauen. Leg es lieber als Script-Bibliothek an.

    [size=x-small]
    Computer sind da um zu rechnen!
    Nicht um Ausreden wie: "Ich kann nicht durch Null teilen!", auf den Bildschirm zu schreiben.
    [/size]

  • Hallo Leute,


    ich bin nun soweit, dass ich die DB aufgesetzt habe, bis auf die Import funktion.


    Hier ein Screenshot der DB mit den Feldern, die automatisch ausgefüllt werden müssen.


    [img align=left]http://home.arcor.de/oriental-flavour/1.jpg[/img]



















    Mit einer Batch-Datei generiere ich lokal auf dem Laufwerk C:\ eine info.txt datei, die PC Informationen ausliest. Die wichtigsten Daten stehen in den ersten Zeilen der Datei.



    Frage:


    [color=FF9900]kann mir jemand Scripttechnisch helfen die Daten in die Felder zu kriegen? Ich kann leider kein LotusScript [/color] :(


    Zusammenfassung:


    - Info.txt ist immer auf C:\
    - Die wichtigsten Infos stehen alle in den ersten Zeilen.
    - Diese Infos müssen von der Info.txt in die DB Felder geschrieben werden.



    Ich bedanke mich recht herzlich :)


    Gruß,


    Aspi

  • Du wirst mit deinem Textfile nur begrenzte Freude haben, denn - wie bei MS üblich - ist das Outputformat keinesfalls immer gleich. Ob am Ende des Strings über den Prozessor xxx MHz oder y.zz GHz steht, ob der freie Plattenplatz und das virtuelle Memory mit oder ohne Tausenderpunkttrenner ausgegeben werden, hängt von Faktoren ab, auf die du wenig Einfluß hast.


    Wenn ich die ganze Beitrags-Historie sehe, frage ich mich allerdings, ob es hier nicht um Dinge geht, für die es längst fertige Lösungen gibt.


    Wenn deine Clients min. Win 98, besser min Win2000 haben, ist z.B. der WMI-Prozess automatisch gestartet, mit dem du dir auch aus der Ferne als (WIN-Domänen)-Administrator Inventarisierungsdaten von Clients abholen kannst.


    Such doch mal bei OpenNTF oder in der Sandbox nach


    WMI und INVENTORY. Oder nur nach Inventory. Da springen dich die Lösungen an. Auch Klassen, die du zur Auswertung heranziehen kannst, wenn all das nicht fruchtet, wonach du genau suchst.


    Vielleicht bekommst du dort Dinge, die dir das RumMurksen mit schwach formatierten Textfiles ersparen. Wenn deine User nicht auf C:\ schreiben dürfen, ist deine ganze "Logistik" schon in der Tonne - und in den meisten Firmennetzwerken dürfen die User nicht auf C:\ schreiben.