
135961
12.04.2018, aktualisiert um 15:32:27 Uhr
WMI Powershell. Erstellung eines Programm zum auslesen und speichern mehrere Daten
Hallo zusammen,
mein Problem ist ich soll ein Programm erstellen ,dass die folgenden Daten an einem Lokalenrechner ausliest und in ein Textdokument speichert :
*Rechnernamen
*Anmeldennamen
*IP-Adresse
*Installierte Software
*OS
mir wurde gesagt ich soll es mit WMI oder Powershell erstellen leider habe ich von beim keine Ahnung
und weiss daher nicht wie ich das ganze angehen soll.
Gruß
Kodiak
mein Problem ist ich soll ein Programm erstellen ,dass die folgenden Daten an einem Lokalenrechner ausliest und in ein Textdokument speichert :
*Rechnernamen
*Anmeldennamen
*IP-Adresse
*Installierte Software
*OS
mir wurde gesagt ich soll es mit WMI oder Powershell erstellen leider habe ich von beim keine Ahnung
und weiss daher nicht wie ich das ganze angehen soll.
Gruß
Kodiak
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 370954
Url: https://administrator.de/forum/wmi-powershell-erstellung-eines-programm-zum-auslesen-und-speichern-mehrere-daten-370954.html
Ausgedruckt am: 15.04.2025 um 15:04 Uhr
3 Kommentare
Neuester Kommentar
Hallo,
ich gehe mal davon aus, dass Du Azubi bist und Dein Ausbilder Dir diese Aufgabe gestellt hat. Was glaubst Du eigentlich, warum er das getan hat? Ich verrate es Dir - damit Du was lernst!
Und zwar nicht nur über PowerShell oder WMI sondern auch, wie man sich fehlendes Wissen bzw. fehlende Informationen erarbeitet. Denn auch wenn Du 10 oder 20 Jahre in der IT arbeitest, wirst Du fast jeden Tag irgendetwas nicht wissen und musst es lernen/herausfinden.
Mal ein grober Abriss zu "Was ist WMI?"
WMI ist eine Programmierschnittstelle des Betriebssystems, über die man verschiedenste Informationen über die Hard- und Software-Komponenten des Rechners abfragen und für manche Komponenten sogar Kommandos ausführen kann. WMI stellt dazu eine objektorientierte Sicht auf die Rechnerkomponenten zur Verfügung.
Exkurs: Objekte sind Instanzen von Klassen, eine Klasse ist so etwas wie der Bauplan für ein Objekt. Ein Objekt hat Eigenschaften und teilweise auch Methoden. Über die Eigenschaften können Informationen und funktionsbestimmende Parameter abgefragt und manchmal auch gesetzt werden, über die Methoden können die bereits erwähnten Kommandos ausgeführt werden.
Es gibt z.B. Klassen, die das Mainboard, die Netzwerkkarte, die vorhandenen Datenträger, das Betriebssystem oder die laufenden Programme und Systemdienste beschreiben. Die Klassen von WMI sind in sog. Namensräumen (namespaces) thematisch gruppiert.
Sehr oft gibt es von einer Klasse mehrere Instanzen, z.B. pro Datenträger eine Instanz der WMI-Klasse für Datenträger. Alle Instanzen einer Klasse sind in einer Collection zusammengefasst. Will man eine bestimmte Instanz haben, kann man entweder in einer Schleife über eine solche Collection iterieren oder man formuliert eine Abfrage die eine Collection zurückliefert, die nur Instanzen mit bestimmten Eigenschaften enthält, im Idealfall nur noch eine Instanz. Solche Abfragen lassen sich in WQL formulieren, der WMI Query Language. Dabei handelt es sich um eine Art stark vereinfachtes SQL, die Abfragesprache für Datenbanken.
Deine Aufgabe besteht jetzt darin, herauszufinden
Dann musst Du Dir von WMI Instanzen dieser Klassen holen und die Infos aus den entsprechenden Eigenschaften auslesen.
Google ist Dein Freund und MSDN die Bibel.
Grüße
Friemler
ich gehe mal davon aus, dass Du Azubi bist und Dein Ausbilder Dir diese Aufgabe gestellt hat. Was glaubst Du eigentlich, warum er das getan hat? Ich verrate es Dir - damit Du was lernst!
Und zwar nicht nur über PowerShell oder WMI sondern auch, wie man sich fehlendes Wissen bzw. fehlende Informationen erarbeitet. Denn auch wenn Du 10 oder 20 Jahre in der IT arbeitest, wirst Du fast jeden Tag irgendetwas nicht wissen und musst es lernen/herausfinden.
Mal ein grober Abriss zu "Was ist WMI?"
WMI ist eine Programmierschnittstelle des Betriebssystems, über die man verschiedenste Informationen über die Hard- und Software-Komponenten des Rechners abfragen und für manche Komponenten sogar Kommandos ausführen kann. WMI stellt dazu eine objektorientierte Sicht auf die Rechnerkomponenten zur Verfügung.
Exkurs: Objekte sind Instanzen von Klassen, eine Klasse ist so etwas wie der Bauplan für ein Objekt. Ein Objekt hat Eigenschaften und teilweise auch Methoden. Über die Eigenschaften können Informationen und funktionsbestimmende Parameter abgefragt und manchmal auch gesetzt werden, über die Methoden können die bereits erwähnten Kommandos ausgeführt werden.
Es gibt z.B. Klassen, die das Mainboard, die Netzwerkkarte, die vorhandenen Datenträger, das Betriebssystem oder die laufenden Programme und Systemdienste beschreiben. Die Klassen von WMI sind in sog. Namensräumen (namespaces) thematisch gruppiert.
Sehr oft gibt es von einer Klasse mehrere Instanzen, z.B. pro Datenträger eine Instanz der WMI-Klasse für Datenträger. Alle Instanzen einer Klasse sind in einer Collection zusammengefasst. Will man eine bestimmte Instanz haben, kann man entweder in einer Schleife über eine solche Collection iterieren oder man formuliert eine Abfrage die eine Collection zurückliefert, die nur Instanzen mit bestimmten Eigenschaften enthält, im Idealfall nur noch eine Instanz. Solche Abfragen lassen sich in WQL formulieren, der WMI Query Language. Dabei handelt es sich um eine Art stark vereinfachtes SQL, die Abfragesprache für Datenbanken.
Deine Aufgabe besteht jetzt darin, herauszufinden
- wie man sich in PowerShell Instanzen bestimmter WMI-Klassen beschafft,
- in welcher/welchen WMI-Klasse(n) die zu ermittelnden Informationen enthalten sind und
- welchem Namespace die jeweilige Klasse zugeordnet ist.
Dann musst Du Dir von WMI Instanzen dieser Klassen holen und die Infos aus den entsprechenden Eigenschaften auslesen.
Google ist Dein Freund und MSDN die Bibel.
Grüße
Friemler

Schaut euch den an
Powershell oder Batch Script
Koppschüttel, dabei hat @Friemler es ihm so ausführlich und perfekt erläutert wie er vorzugehen hat. Die Jugend von heute, keine Zeit mehr, kein Bock mehr, aber stundenlang mit dem Smartphone dämliche Dinge tun.
Powershell oder Batch Script
Koppschüttel, dabei hat @Friemler es ihm so ausführlich und perfekt erläutert wie er vorzugehen hat. Die Jugend von heute, keine Zeit mehr, kein Bock mehr, aber stundenlang mit dem Smartphone dämliche Dinge tun.