So finden Sie den Zweck der auf dem Computer installierten Programme heraus. So erhalten Sie eine Liste der installierten Programme mit Windows PowerShell. Die horizontale Bildlaufleiste dient dazu

In dieser einfachen Anleitung gibt es zwei Möglichkeiten, eine Textliste aller in Windows 10, 8 oder Windows 7 installierten Programme zu erhalten, indem Sie die integrierten Tools des Systems oder kostenlose Software von Drittanbietern verwenden.

Warum könnte dies erforderlich sein? Zum Beispiel Liste installierte Programme kann nützlich sein, wenn Sie einen neuen Computer oder Laptop kaufen und ihn selbst einrichten. Auch andere Szenarien sind möglich – beispielsweise um unerwünschte Software in der Liste zu identifizieren.

Das Symbol „Arbeitsplatz“ dient dazu

Wenn Sie die oben genannten Tipps befolgen, stellen Sie sicher, dass Ihr Computer immer die maximale garantierte Leistung hat und sogar eine lange Lebensdauer hat. Die heutige Kolumne zeigt, wie einfach es ist, festzustellen, welche Programme auf das Netzwerk zugreifen und Daten verbrauchen, ohne den Benutzer zu benachrichtigen. Erfahrene Benutzer beherrschen sicherlich professionelle Tools oder Funktionen zur Betriebssystemverwaltung. Da jedoch fortgeschrittene Computerkenntnisse erforderlich sind, wird der Einsatz von Netzwerkadministrationstechniken zu einem Hindernis für diejenigen, die nur mögliche Engpässe identifizieren möchten Heimnetzwerk.

Abrufen einer Liste der installierten Programme mithilfe von Windows PowerShell

Bei der ersten Methode wird die Standardsystemkomponente Windows PowerShell verwendet. Um es zu starten, können Sie die Tasten Win+R auf Ihrer Tastatur drücken und Folgendes eingeben Power Shell oder nutzen Windows-Suche 10 oder 8 zum Laufen.

Um anzuzeigen volle Liste Um Programme auf dem Computer zu installieren, geben Sie einfach den folgenden Befehl ein:

Und um diese Aufgabe zu erleichtern, gibt es Programme mit einer intuitiven Oberfläche, die unkompliziert Auskunft über den Verbrauch von Netzwerkdaten geben. Das Programm steuert alle Programme, die auf das Internet zugreifen. In vielen Fällen gibt es Programme, die beim Start geladen werden Betriebssystem und bleiben für den Benutzer unbemerkt. Sie beeinträchtigen jedoch nicht die Geschwindigkeit des Netzwerks.

Die Funktionen des Programms sind in vier Registerkarten unterteilt. Das Diagramm ist eine Darstellung, die der Datenmenge entspricht, die sich im Netzwerk bewegt, wobei jede Farbe im Diagramm den Verbrauch eines bestimmten Programms darstellt. Eine Firewall ist eine Funktion, mit der Sie mit einem einzigen Klick ein oder mehrere Programme blockieren können, die Daten verbrauchen. Um das Programm zu blockieren, klicken Sie einfach auf das Flammensymbol.

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Tabelle -AutoSize

Das Ergebnis wird direkt im PowerShell-Fenster in Form einer Tabelle angezeigt.


Um die Programmliste automatisch zu exportieren Textdatei, kann der Befehl in der folgenden Form verwendet werden:

Netzwerk ist eine erweiterte Funktion, mit der Sie alle im Netzwerk verbundenen Geräte anzeigen können. Sie ist nur in der kostenpflichtigen Version des Programms verfügbar. Warnungen sind Benachrichtigungen über Netzwerkdiagnosen und laufende Programme. Idealerweise verbindet sich nur das Betriebssystem – andere Programme sollten einzeln geprüft werden, um den Zugriff auf das Netzwerk zu ermöglichen.

Um den Zugriff zu blockieren, verwenden Sie einfach die Firewall-Funktion. Damit der Computer einwandfrei funktioniert, ist es neben einem stabilen Betriebssystem auch erforderlich, für jede Hardware die passenden Treiber zu installieren, wie z Soundkarte, drahtloses Netzwerk, Video und andere. Ein Treiber ist ein kleines Programm, das integriert Hardware mit dem Betriebssystem. Ohne dieses Programm funktioniert das Gerät möglicherweise nicht richtig.

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table -AutoSize > D:\programs-list.txt

Nach Ausführung des angegebenen Befehls wird die Liste der Programme in der Datei „programs-list.txt“ auf dem Laufwerk D gespeichert. Systemfestplatte, erstellen Sie einen eigenen Ordner darauf (und speichern Sie ihn) oder führen Sie PowerShell als Administrator aus.

In vielen Fällen verfügen Betriebssysteme bereits über eine breite Unterstützung für die gängigsten Geräte. Wenn jedoch eine Komponente nicht automatisch vom System unterstützt wird, sollten Sie die meisten installieren geeigneter Fahrer für das Gerät. Um die Verwaltung von Peripheriegeräten zu erleichtern, gibt es Programme, die alle Komponenten des Computers auflisten, den Zustand des Treibers überprüfen und Sicherung und suchen Sie ggf. im Internet nach einem Installationsprogramm.

Führen Sie nach der Installation das Programm aus und erstellen Sie es Konto, wodurch der Zugriff auf den vom Programmentwickler angebotenen Treiberaktualisierungsdienst freigegeben wird. Mit der Kategorie „Treiber-Downloads und Informationen“ kann das Programm eine vollständige Bestandsaufnahme Ihres Computers durchführen. Durch diese Bestandsaufnahme zeigt das Programm Ihre gesamte Hardware und Versionen an installierte Treiber. Sie können auch nach Updates suchen, zusätzliche Informationen zu Computerkomponenten anzeigen und feststellen, ob eine Komponente nicht funktioniert.

Eine weitere Ergänzung: Die obige Methode speichert eine Liste nur der Programme für den Desktop Windows-Desktop aber keine Bewerbungen von Windows Store 10. Um eine Liste davon zu erhalten, verwenden Sie den folgenden Befehl:

Get-AppxPackage | Wählen Sie Name, PackageFullName | Format-Table -AutoSize > D:\store-apps-list.txt

Weitere Informationen zur Liste solcher Anwendungen und deren Vorgänge finden Sie im Material:.

Abrufen einer Liste der installierten Programme mithilfe von Software von Drittanbietern

Um eine Liste zu erhalten Windows-Programme Gehen Sie in CCleaner wie folgt vor:

Klicken Sie dazu auf die Schaltfläche Online nach aktualisierten Treibern suchen. Damit der Dienst diese Aufgabe erfolgreich abschließen kann, muss der Computer mit dem Internet verbunden sein. Erstellen Sie eine Bestandsaufnahme der auf dem Computer installierten Treiberversionen. In wenigen Sekunden wird die Hardware-Inventur durchgeführt. Der Bericht wird auf der Website des Lieferanten angezeigt. Die darin enthaltenen Daten stehen dem von Ihnen registrierten Nutzer zur Verfügung.

So erfahren Sie die Einstellungen, Eigenschaften und Informationen eines PCs oder Laptops

Sie können erstellen Sicherung Installieren Sie die auf Ihrem Computer installierten Treiber und stellen Sie sie wieder her, wenn Sie sie benötigen. Die Wirksamkeit des Programms beruht auf dem Vorhandensein einer umfangreichen Treiberbibliothek des Softwareherstellers. Je beliebter die Hardware, desto größer ist die Verfügbarkeit von Treibern dafür.



Gleichzeitig speichert CCleaner sowohl Desktop-Programme als auch Windows Store-Anwendungen in der Liste (jedoch nur diejenigen, die zum Entfernen verfügbar sind und nicht in das Betriebssystem integriert sind, anders als Sie diese Liste in Windows PowerShell erhalten).

Das ist vielleicht alles zu diesem Thema, ich hoffe, dass die Informationen für einige Leser nützlich sind und ihre Anwendung finden.

Das Programm stellt Treiber für die gängigsten Geräte bereit. Es kann nicht überprüfen, was in anderen Technologien vor sich geht. Wenn ja, wissen Sie, dass es eine Lösung für dieses Problem gibt. Dadurch werden auch diese häufigen Programme eliminiert. Bevor Sie dies tun, ist jedoch Vorsicht geboten: Durch diesen Vorgang werden auch Programme entfernt, die Sie später gekauft haben, sowie Dateien darüber gelöscht. Daher ist es wichtig zu verstehen, dass Sie sie später erneut installieren müssen.

Dieser Vorgang behebt auch aktualisierte Treiber, die bei einigen Komponenten Probleme verursachen können. Im Hinblick auf die Gewährleistung lesen Sie bitte die Warnhinweise auf der Seite sorgfältig durch. Führen Sie das gerade heruntergeladene Programm aus. Lesen Sie die Lizenzbedingungen und klicken Sie auf „Akzeptieren“.

Systemadministratoren müssen häufig feststellen, welche Programme auf den Computern in den von ihnen bedienten Netzwerken installiert sind. Es gibt eine Reihe von Umständen, die sie dazu zwingen, die installierten Anwendungen regelmäßig zu überprüfen Unternehmenssysteme. Es kommt vor, dass ein Administrator ein Softwarepaket installiert, vergisst, es zu dokumentieren, und sich später herausstellt, dass die Sicherheit des Pakets Sicherheitslücken aufweist. Manchmal werden Benutzern Administratorrechte gewährt, die es ihnen ermöglichen, Softwareprodukte selbstständig auf ihren Computern zu installieren. Es besteht auch eine solche Gefahr: Ein Benutzer, der willkürlich Administratorrechte zugewiesen hat, kann nicht autorisierte Software installieren und damit die Möglichkeit eröffnen, die Organisation rechtlich zur Verantwortung zu ziehen.

Lesen Sie die Hinweise noch einmal sorgfältig durch; Wenn alles in Ordnung ist, klicken Sie auf „Start“. Das heißt, er wird es nicht einmal haben vorinstallierte Programme vom Hersteller. Schriftart, Typografie und Berechnungen sind die Art des Drucks, sichtbare und Bildschirmschriften sind grafische Muster, die Sie auf Ihrem Computer schreiben. Schriftarten haben in der Welt der Grafik, des Marketings und im Geschäftsumfeld eine gewisse Bedeutung. In Büros ist es sehr häufig erforderlich, für offizielle Dokumente eine spezielle Schriftart zu verwenden. Anschließend können Sie das Dokument und die Blätter mit einer einzigartigen und personalisierten Schrift am Computer verfassen.

Drittanbieter bieten Tools zur Überwachung installierter Software an, kleine Unternehmen verfügen jedoch möglicherweise nicht über die Ressourcen, eine solche Lösung zu implementieren. Unser Unternehmen hatte kein Audit-Softwaretool, also schrieb ich Windows-Skript PowerShell Get-InstalledApp.ps1 (siehe Auflistung). Bevor ich mit der Beschreibung der Vorgehensweise bei der Verwendung dieses Skripts und seiner Funktionsweise fortfahre, möchte ich mich auf zwei Methoden zur Erkennung installierter Software mithilfe eines Skripts konzentrieren und erklären, was mich an der von mir gewählten Methode gereizt hat.

Wie erhalte ich schnell und einfach eine Liste der installierten Programme, auch ohne die Installation von Dienstprogrammen von Drittanbietern?

Sie können auch mit der rechten Maustaste auf die Datei klicken und „Installieren“ wählen Kontextmenü. Für jede aufgelistete Schriftart können Sie eine Vorschau anzeigen, eine Testseite drucken und ein Zeichen von Ihrem Computer löschen. Wir können ein Programm auch deinstallieren, indem wir mit der rechten Maustaste darauf klicken und den Eintrag „Deinstallieren“ auswählen. Sie können kostenlose Cubes und Schriftartensammlungen auf Websites wie durchsuchen. Damit haben Sie immer eine Liste der Programme, die neu installiert oder auf anderen, noch konfigurierten Computern installiert werden müssen.

Win32_Product-Klasse oder -Registrierung

Im Werkzeugkasten Windows-Steuerelemente Management Instrumentation (WMI) verfügt über eine Win32_Product-Klasse, mit der Sie auf einem Computer installierte Anwendungen registrieren können. In PowerShell ist diese Funktion einfach zu implementieren. Ja, das Team

Get-WmiObject Win32_Product
| Namen auswählen

generiert eine Liste aller auf dem aktuell untersuchten Computer installierten Anwendungen. Es muss jedoch gesagt werden, dass die Klasse Win32_Product eine Reihe von Einschränkungen aufweist.

Erstellen Sie eine Liste der installierten Programme mit Software von Drittanbietern

Im Abschnitt „Softwarelizenzen“ wird ein anderer Produktschlüssel angezeigt. Unter anderen Programmen, die alternativ genutzt werden können, immer super. In diesem Fall können Sie herausfinden, wie viele Computer Sie haben, wie ausgestattet und mit welcher Software.

Auch wenn Sie nicht unter Tische kriechen oder diese gar öffnen müssen. Der Vorteil besteht darin, dass sie nicht installiert werden müssen. Nach dem Start der Übersicht erscheint im letzten Bildschirm ein Bildschirm mit Informationen zum installierten Gerät Software, Lizenzinformationen, Peripheriegeräte, Speicher, Prozessorgeschwindigkeit, Modellidentifikation, Netzwerkeinstellungen, Programmstart und andere Informationen.

  • Es liest nur die Namen von Anwendungen, die mit installiert wurden Windows-Dienste Installateur. Die Namen von Anwendungen, die auf andere Weise installiert wurden, werden von dieser Klasse nicht gelesen. Dies bedeutet, dass die Klasse „Win32_Product“ zur Durchführung einer allgemeinen Überwachung verwendet wird Software-Tools Dies ist nur möglich, wenn Sie Windows Installer ausschließlich zum Installieren von Paketen verwenden, was für die meisten Netzwerke nicht praktikabel ist.
  • Das Lesen von Instanzen der Klasse Win32_Product ist sehr langsam.
  • Es ist nicht immer möglich, Instanzen der Win32_Product-Klasse von Remotecomputern zu lesen. Wenn ich also versuche, einen ähnlichen Vorgang in meinem Netzwerk durchzuführen, erhalte ich die Fehlermeldung „Generischer Fehler“.

Aufgrund dieser Probleme ist die Verwendung der WMI-Klasse Win32_Product beeinträchtigt. Es gibt jedoch eine Alternative Methode Informationen über installierte Anwendungen erhalten – direkt aus der Registrierung. Informationen zu den auf dem Computer installierten Anwendungen sind im Registrierungsschlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Uninstall enthalten. Jeder Unterabschnitt des Abschnitts „Deinstallieren“ stellt die installierte Anwendung dar, und die Werte in jedem Unterabschnitt zeigen Informationen über die entsprechende Anwendung an, wie auf dem Bildschirm angezeigt. Um eine Liste der Anwendungen zu erhalten, können Sie daher den Abschnitt „Deinstallieren“ „durchsuchen“ und die Daten jedes Unterabschnitts lesen, der im Abschnitt „Deinstallieren“ enthalten ist.

Windows. So ändern Sie das Design des Desktops

Die Anwendung ist bis auf die Hilfe vollständig lokalisiert. In diesem Fall ist eine Wiedergabe ohne diese Filter nicht möglich. Es enthält viele weitere Werkzeuge, Anpassungen und Bildbearbeitungswerkzeuge, sodass es nicht nur für geeignet ist erfahrene Benutzer, sondern auch für diejenigen, die das Videoproblem verstehen. Wenn Sie an den Einstellungen nichts ändern möchten, können Sie natürlich alle Werte in den Standardeinstellungen belassen. Die andere Priorität hierbei ist, was das System stören kann.

Der PowerShell-Registrierungsanbieter bietet die Möglichkeit, den Befehl „Get-ChildItem“ auszuführen, um eine Liste der Anwendungsnamen abzurufen, die auf dem untersuchten Computer installiert sind:

Get-ChildItem HKLM:\SOFTWARE\
Microsoft\Windows\CurrentVersion\
deinstallieren |
ForEach-object((Get-ItemProperty
Microsoft.PowerShell.Core\Registry::$_).
Anzeigename)

In PowerShell 1.0 bietet der Befehl „Get-ChildItem“ jedoch keinen Zugriff auf den Registrierungsanbieter entfernter Computer Daher muss der Administrator StdRegProv, die WMI-Registrierungsverwaltungsklasse, verwenden, um das Ziel zu erreichen. Die StdRegProv-Klasse bietet eine Reihe nützlicher Methoden, die das Lesen der Registrierung erleichtern, unabhängig davon, ob Sie lokal oder remote mit einem System interagieren. Weitere Informationen Informationen zur StdRegProv-Klasse finden Sie auf der Seite „StdRegProv-Klasse“ auf MSDN (http://msdn.microsoft.com/en-us/library/aa393664.aspx).

Diese Version ist auch neue Funktion Erstellen von Bits, ohne das Betriebssystem auszuführen, das erstellt Bitmaps Computerbenutzer, ohne das Produkt zu installieren. Mit Apps haben Sie die Möglichkeit, Ihr gesamtes Betriebssystem zu sichern und bei Bedarf jederzeit wiederherzustellen. Dies kann nach seinem oder ihrem Angriff auf den verfluchten Code nützlich sein. Sie können ein Backup nach einem Plan oder basierend auf einem Ereignis erstellen. Dank einer speziellen Funktion können Sie auch während der Arbeit ein Backup durchführen, ohne den Computer ausschalten oder in einem speziellen Modus neu starten zu müssen.

So arbeiten Sie mit dem Skript Get-InstalledApp.ps1

Das Skript „Get-InstalledApp.ps1“ liest Informationen zu installierten Anwendungen aus der Registrierung und gibt dann entweder eine Liste aller Anwendungen zurück installierte Anwendungen oder eine Liste von Anwendungen, die die angegebenen Kriterien erfüllen. Das Skript verwendet die folgende Befehlszeilensyntax:

Get-InstalledApp [-computername]
[-appID] [-appname]
[-publisher] [-version] [-matchall]

Die Anzahl der Geschäftsreisen ist keine einfache Sache. Sie müssen eine Reihe von Fans kennen und dennoch die Formel kennen, die sie entwickeln sollen. Local Work Trip Finder ist ein Programm, das Ihnen die Arbeit erleichtert. Du gibst ihm alles, was du brauchst, und nach einer Weile wirst du wissen, was du tun musst.

Ich erhalte die Meldung, dass auf meinem Computer Multimediafunktionen fehlen

Versuchen Sie dann, das Problem zu lösen, indem Sie die Vorgehensweise befolgen. Wenn das Fenster „Dateidownloads“ nicht angezeigt wird, müssen Sie möglicherweise die Popup-Blocker-Einstellungen Ihres Browsers ändern. Anwendungshilfe für dieses Verfahren. Klicken Sie im Fenster „Interneteigenschaften“ auf die Registerkarte „Erweitert“. Deaktivieren Sie unter „Einstellungen“ unter „Sicherheit“ das Kontrollkästchen „Verschlüsselte Seiten nicht auf der Festplatte speichern“.

Der Parameter Computername wird verwendet, um eine Liste eines einzelnen Computernamens oder eine Liste von Computernamen zurückzugeben. Der Parameter „Computername“ steht an erster Stelle. Um den Befehl zu verkürzen, können Sie den Schalter „-computername“ weglassen und einfach den Computernamen in den Befehl einfügen. Wenn Sie diese Option vollständig ausschließen, geht das Skript davon aus, dass Sie Daten auf dem lokalen Computer abrufen möchten.

Das Fenster in Windows ist

Und Sie sehen das System, das Sie verwenden. Das Problem tritt auf, wenn das System abstürzt oder Sie einen Absturz haben Systemabbild. In diesem Fall können Sie über mehrere Möglichkeiten ermitteln, welches Betriebssystem installiert ist. Leider enthalten nicht alle aufgeführten Listen alle Informationen.

Geben Sie den Namen ein, unter dem die Registrierung verbunden werden soll. Klicken Sie dann auf die angehängte Registrierung und wählen Sie im Reiter „Datei“ „Free Hive“. Sie werden es ganz einfach finden. Auf der Registerkarte „Details“ sehen wir die Version der Datei, wobei die Version der Datei der Version des Betriebssystems entspricht. Leider wissen wir nicht, ob es sich um ein 32- oder 64-Bit-System handelt. Beginnen wir auf dem Startbildschirm, wo Sie zunächst die Schaltfläche „Durchsuchen“ starten, um nach Dateien zu suchen, die gelöscht werden können. Achten Sie auf die Kontrollmarkierungen, die anzeigen, welche Daten gelöscht werden, damit Sie sich keine Gedanken darüber machen müssen, was Sie noch benötigen.

Der Parameter -appID wird verwendet, um Anwendungen anhand ihrer Anwendungs-IDs zu suchen. Die Anwendungs-ID ist ein Registrierungsunterschlüssel, der mit dem Deinstallationsschlüssel zusammenhängt. Auf dem Bildschirm wird die Anwendungs-ID im linken Bereich hervorgehoben. Für Apps, die mit installiert wurden Windows Installer, entspricht die Anwendungs-ID dem Globally Unique Identifier (GUID) der Produkt-ID der entsprechenden Anwendung. Verwenden des Parameters -appID - Der beste Weg Erkennung spezifischer Anwendungen, die über den Dienst installiert wurden Windows Installer.

Die Option -appname wird verwendet, um Apps anhand ihres Anzeigenamens zu suchen. Der Anzeigename ist der Name der Anwendung, wie er in der Liste „Programme hinzufügen/entfernen“ angezeigt wird, oder der DisplayName-Wert im entsprechenden Anwendungsunterschlüssel. Beispielsweise hat die hervorgehobene Anwendung auf dem Bildschirm den Anzeigenamen OpenOffice.org 2.4.

Die Option -publisher wird verwendet, um Apps nach Herausgeber zu suchen. Wenn Sie keine genauen Informationen darüber haben, wer der Herausgeber der Anwendung ist, können Sie diese im Eintrag „Herausgeber“ des Registrierungsunterschlüssels für diese Anwendung finden. Der Herausgeber der auf dem Bildschirm hervorgehobenen Anwendung ist also OpenOffice.org.

Die Option -version wird verwendet, um Anwendungen nach Version zu suchen. Wenn Sie die Version einer Anwendung nicht genau kennen, können Sie diese Daten aus dem DisplayVersion-Parameter des Unterabschnitts der Anwendung lesen. Die auf dem Bildschirm hervorgehobene Anwendung hat beispielsweise die Version 2.4.9286.16.

Wenn Sie den Schalter -matchall für die Datei Get-InstalledApp.ps1 angeben, zeigt das Skript alle Anwendungen an, die den angegebenen Kriterien entsprechen, anstatt anzuhalten, nachdem die erste Übereinstimmung gefunden wurde. Ja, das Team

Get-InstalledApp -Publisher
„Microsoft Corporation“-Matchall

gibt eine Liste aller zurück Microsoft-Anwendungen auf dem zu testenden Computer installiert. Wenn Sie den Schalter -matchall weglassen, stoppt das Skript die Suche, nachdem die erste Übereinstimmung gefunden wurde.

Alle aufgelisteten Schalter (-appID, -appname, -publisher und -version) – unterstützen die Suche mit Platzhaltern; Bei Schlüsselargumenten wird die Groß-/Kleinschreibung nicht beachtet. Ja, das Team

Get-InstalledApp -appname
„*Büro*“ -matchall

zeigt eine Liste aller auf dem untersuchten Computer installierten Anwendungen an, deren Namen das Wort Office enthalten. Sie können auch eine beliebige Kombination der Parameter -appID, -appname, -publisher und -version angeben, um detailliertere Suchkriterien festzulegen. Ja, das Team

Get-InstalledApp sales01-appname
"*.NET Framework*" -Version 2*"

gibt die erste Anwendung aus, deren Anzeigename die Wörter .NET Framework enthält und deren Versionsnummer mit der Zahl 2 beginnt. Wenn keine Anwendungen gefunden werden, die die angegebenen Kriterien erfüllen, gibt das Skript keine Werte zurück. Für weitere Informationen zu Platzhalterzeichen in PowerShell führen Sie den Befehl aus

Holen Sie sich Hilfe zu_wildcard

Das Skript „Get-InstalledApp.ps1“ gibt Objekte zurück, die die Eigenschaften „ComputerName“, „AppID“, „AppName“, „Publisher“ und „Version“ enthalten, sodass Sie PowerShell-Befehle verwenden und die Ausgabe entsprechend Ihren Anforderungen formatieren können. Ja, das Team

Get-InstalledApp | Select-Object AppName,
Version |
AppName des Sortierobjekts

Zeigt eine Liste der Anwendungen und die Version jeder Anwendung an, sortiert nach Anwendungsnamen. Um über alles zu berichten, werden durch Kommas getrennte Werte verwendet Softwareprodukte auf allen Computern installiert ist, die in der Datei Computers.txt aufgeführt sind, müssen Sie den Befehl verwenden

Get-InstalledApp(Get-Content
Computers.txt) |
Export-CSV Report.csv -notypeinformation

Der Parameter -NoTypeInformation des Befehls Export-CSV verhindert, dass Informationen an die Ausgabe-CSV-Datei übergeben werden. Team

Get-InstalledApp(Get-Content
Computers.txt)
-appID "(7131646D-CD3C-40F4-97B9-
CD9E4E6262EF)" |
Select-Object ComputerName

generiert eine Liste der in der Datei Computers.txt genannten Computer, auf denen die .NET Framework 2.0-Bibliothek installiert ist. Wenn Sie eine geordnete Liste der auf dem untersuchten System installierten Microsoft-Anwendungen und ihrer Versionen, sortiert nach Anwendungsnamen, erhalten möchten, verwenden Sie den Befehl

Get-InstalledApp -Publisher
„Microsoft Corporation“-matchall |
Select-Object AppName, Version |
AppName des Sortierobjekts

Interne Mechanismen des Get-InstalledApp.ps1-Skripts

Nachdem Sie nun wissen, wie Sie das Skript „Get-InstalledApp.ps1“ verwenden, sehen wir uns an, wie es funktioniert. Zunächst deklariert das Skript Befehlszeilenoptionen mit dem Befehl param; Anschließend werden zwei globale Variablen zur späteren Verwendung mit der StdRegProv-Klasse erstellt. Das Skript deklariert dann die Nutzungsfunktion und die Hauptfunktion. Die letzte Zeile des Skripts ruft die Hauptfunktion auf.

Die Hauptfunktion enthält den Hauptteil des Skripts. Zunächst findet sie heraus, ob dies der Fall ist Befehlszeile-Hilfe-Option. Ist dies der Fall, ruft die Hauptfunktion die Nutzungsfunktion auf, die eine Nutzungsmeldung generiert und das Skript beendet.

Als nächstes erstellt die Hauptfunktion eine leere Hash-Tabelle und speichert sie in der Variablen $propertyList, wie in Listing A gezeigt.

Wenn mindestens einer der Parameter (-appID, -appname, -publisher oder -version) in der Befehlszeile vorhanden ist, fügt die Funktion den dem Parameternamen entsprechenden Schlüssel zur Hash-Tabelle hinzu und setzt den Wert dieses Schlüssels auf das Parameterargument. Ja, das Team

Get-InstalledApp -appname
„Windows-Supporttools“

weist die Hauptfunktion an, die Hash-Tabelle mithilfe des AppName-Schlüssels zu füllen, der auf Windows-Supporttools festgelegt ist.

Die Hauptfunktion prüft dann, ob der Parameter Computername leer ist. Wenn der Parameter leer ist, verwendet die Funktion den Namen lokalen Computer, die es aus der Umgebungsvariablen COMPUTERNAME erhält. Wenn der Parameter nicht leer ist, durchläuft die Funktion mithilfe einer foreach-Schleife das Array der Computernamen. Die Schleife wird nur einmal ausgeführt, wenn das Parameterargument „Computername“ der Name eines einzelnen Computers ist.

Innerhalb der foreach-Schleife deklariert die Hauptfunktion die Variable $err und setzt ihren Wert auf $NULL. Anschließend erkennt die Funktion mithilfe eines speziellen Skriptblocks (Trap-Skriptblock) WMI-Fehler, wie in Fragment B der Auflistung gezeigt. Wenn ein Fehler auftritt, aktualisiert der Hook-Skriptblock die Fehlervariable auf die Ebene des aktuellen Fehlerdatensatzes (d. h. setzt sie auf $ERROR ) und setzt die Ausführung des Befehls nach dem Fehler fort.

Als Nächstes stellt die Hauptfunktion mithilfe des Typbeschleunigers für die System.Management.ManagementClass-Klasse des Windows .NET Framework eine Verbindung zur StdRegProv-Klasse auf dem untersuchten Computer her. Tritt ein Fehler auf, wird dieser mithilfe eines speziellen Skriptblocks erkannt, der in Fragment C der Auflistung dargestellt ist. Wenn der Wert von $err nicht gleich $NULL ist, bedeutet dies, dass ein „Trap“-Skriptblock ausgeführt wurde. In diesem Fall generiert die Hauptfunktion mit dem Befehl Write-Error einen Fehlerdatensatz und verwendet dann den Befehl continue, um den Rest der foreach-Schleife zu überspringen und mit dem nächsten Computernamen im Array fortzufahren.

Die Hauptfunktion verwendet dann die EnumKey-Methode der StdRegProv-Klasse, um die Unterabschnitte des Abschnitts „Uninstall“ aufzuzählen. Das Ergebnis der Anwendung der EnumKey-Methode – ein Array von Unterabschnittsnamen – wird in der Eigenschaft sNames gespeichert. Anschließend durchläuft die Funktion das Array der Unterabschnittsnamen mit einer weiteren foreach-Schleife.

Während die Hauptfunktion jeden Unterschlüsselnamen im Array verarbeitet, liest sie die DisplayName-Eigenschaft des entsprechenden Registrierungsschlüssels mithilfe der GetStringValue-Methode der StdRegProv-Klasse. Mit dem Befehl „Join-Path“ hängt die Funktion den Unterschlüsselnamen an den Uninstall-Schlüssel an. Die resultierende Registrierungsroute wird als Argument für die GetStringValue-Methode verwendet, die den Wert des Registrierungseintrags zurückgibt. Dies muss ein Zeichenfolgenwert sein. Diese Methode benötigt drei Argumente: einen Registrierungsschlüssel, einen Schlüsselpfad und einen Einstellungsnamen. Der GetStringValue-Wert gibt ein Objekt zurück, das zwei Eigenschaften enthält: die ReturnValue-Eigenschaft, die einen Wert enthält, der den Erfolg oder Misserfolg des Methodenaufrufs angibt, und die sValue-Eigenschaft, die einen Zeichenfolgenwert enthält. Die Hauptfunktion weist den Wert der Eigenschaft sValue der Variablen $name zu.

Wenn der Wert der Variablen „$name“ nicht „$NULL“ ist, erstellt die Hauptfunktion ein benutzerdefiniertes Ausgabeobjekt, das vier Eigenschaften enthält: ComputerName, AppID, AppName, Herausgeber und Version. Es aktualisiert die ComputerName-Eigenschaft des Objekts mit dem Namen des untersuchten Computers, die AppID-Eigenschaft des Objekts mit dem Namen des aktuellen Unterschlüssels und die AppName-Eigenschaft des Objekts mit dem Anzeigenamen der aktuellen Anwendung. Anschließend ruft die Funktion die GetStringValue-Methode zweimal auf, um die Werte der Publisher- und DisplayVersion-Datensätze abzurufen und die entsprechenden Eigenschaften des benutzerdefinierten Objekts mit diesen Werten zu aktualisieren.

Damit hat die Hauptfunktion das Abrufen von Informationen über die aktuelle Anwendung abgeschlossen und überprüft nun die Hash-Tabelle $propertyList auf Schlüssel. Dazu wird die Count-Eigenschaft der Keys-Sammlung überprüft. Wenn die Hash-Tabelle keine Schlüssel enthält (mit anderen Worten, wenn keine der Optionen (-appID, -appname, -publisher und -version) in der Befehlszeile vorhanden ist), generiert die Funktion einfach ein benutzerdefiniertes Objekt, um dies herauszufinden welche Befehlszeilenoptionsargumente mit den Eigenschaftswerten des benutzerdefinierten Objekts übereinstimmen. Listing D zeigt, wie die Hauptfunktion diese Aufgabe erfüllt.

Zuerst wird die Variable $matches auf 0 gesetzt, dann durchläuft der Code alle Elemente in der Keys-Sammlung der $propertyList-Hash-Tabelle. Für jeden Schlüssel in der $propertyList-Hashtabelle verwendet die Funktion den PowerShell-ähnlichen Umgebungsoperator, um zu bestimmen, ob die Eigenschaft des benutzerdefinierten Objekts mit dem $propertyList-Hashtabellenwert übereinstimmt. Wenn die Werte der angegebenen Elemente übereinstimmen, erhöht die Funktion den Wert der Variablen $matches. Wenn die Anzahl der Übereinstimmungen der Anzahl der Schlüssel in der Hash-Tabelle entspricht, generiert die Hauptfunktion ein benutzerdefiniertes Objekt. Wenn schließlich die Option -matchall in der Befehlszeile fehlt, verwendet die Funktion den Befehl break, um die foreach-Schleife zu verlassen, die die Unterschlüssel der Registrierung durchläuft.

Das Skript „Get-InstalledApp.ps1“ erleichtert daher das Abrufen einer Liste der auf einem oder mehreren Computern installierten Anwendungen. Darüber hinaus kann die Suche nach bestimmten Anwendungen organisiert werden. Zur Überwachung der auf den Computern in Ihrem Netzwerk installierten Software kann auf dieses Szenario durchaus verzichtet werden.

gastroguru 2017