Als je een systeembeheerder bent, is een van je taken het installeren, upgraden en verwijderen van software van veel systemen. Wat als ik je zou vertellen dat je niet meer handmatig naar geïnstalleerde software op elk systeem hoeft te zoeken? Je kunt eigenlijk geïnstalleerde software lijsten met PowerShell!
In deze blogpost ga ik je laten zien hoe je geïnstalleerde software kunt lijsten met PowerShell op je lokale machine en op veel computers tegelijk.

Merk op dat sommige artikelen je kunnen vertellen om zoiets te doen als
Get-WmiObject -Class win32_product
. Doe dat niet. Leer hier waarom hier.
Geïnstalleerde Software en het Register
Voor referentie, geïnstalleerde software bestaat op drie locaties:
- het 32-bits systeemregister voor het verwijderen van software
- het 64-bits systeemregister voor het verwijderen van software
- het register voor het verwijderen van software van elk gebruikersprofiel.
Elke softwarevermelding wordt doorgaans gedefinieerd door de unieke wereldwijde identificatie (GUID) van de software. De binnenkant van de GUID-sleutel bevat alle informatie over dat specifieke stuk software. Om een volledige lijst te krijgen, moet PowerShell elk van deze sleutels doorlopen, elke registerwaarde lezen en de resultaten doorzoeken.
Aangezien de code om deze waarden correct te parsen veel meer is dan een enkel artikel kan bevatten, heb ik een functie genaamd Get-InstalledSoftware
vooraf gebouwd om geïnstalleerde software te vermelden met PowerShell die al die code voor je omvat, zoals je hieronder kunt zien die geïnstalleerde programma’s op een computer vermeldt.
Zodra je deze functie kopieert en plakt in je PowerShell-console of toevoegt aan je script, kun je deze aanroepen door een specifieke computernaam te gebruiken met de ComputerName
-parameter.
Geïnstalleerde software vermelden met PowerShell
Als je dit doet, krijg je een object terug voor elk stuk software dat is geïnstalleerd. Je kunt een schat aan informatie krijgen over welke software dan ook is geïnstalleerd.
Als je van tevoren de naam van de software weet, kun je ook de parameter Naam
gebruiken om alleen de software te beperken die overeenkomt met die waarde.
Bijvoorbeeld, misschien wil je alleen controleren of Microsoft Visual C++ 2005 Redistributable (x64) is geïnstalleerd. Je zou eenvoudigweg deze waarde gebruiken als de parameter Naam
, zoals hieronder wordt getoond.
Samenvatting
Door PowerShell te gebruiken om geïnstalleerde software te verkrijgen, kun je een volledig gratis tool bouwen die jij en je team kunnen gebruiken om eenvoudig geïnstalleerde software op veel Windows-computers tegelijk te vinden!
Source:
https://adamtheautomator.com/powershell-list-installed-software/