Se sei un amministratore di sistema, uno dei tuoi compiti è installare, aggiornare e rimuovere software da molti sistemi. E se ti dicessi che non devi più connetterti a ogni macchina e controllare manualmente il software installato? In realtà, puoi elencare il software installato con PowerShell!
In questo articolo, ti mostrerò come elencare il software installato con PowerShell sulla tua macchina locale e su molte macchine contemporaneamente.

Nota che alcuni articoli possono suggerirti di utilizzare un comando come
Get-WmiObject -Class win32_product
. Non farlo. Scopri perché qui.
Software installato e Registro di sistema
A titolo informativo, il software installato si trova in tre posizioni:
- la chiave di registro di disinstallazione del sistema a 32 bit
- la chiave di registro di disinstallazione del sistema a 64 bit
- la chiave di registro di disinstallazione del profilo utente.
Generalmente, ogni voce di software è definita dall’identificatore univoco globale (GUID) del software. All’interno della chiave GUID sono contenute tutte le informazioni su quel particolare software. Per ottenere un elenco completo, PowerShell deve enumerare ciascuna di queste chiavi, leggere ciascun valore del Registro di sistema e analizzare i risultati.
Poiché il codice per analizzare correttamente questi valori è molto più grande di quanto possa contenere un singolo articolo, ho già creato una funzione chiamata Get-InstalledSoftware
per elencare il software installato con PowerShell che avvolge tutto quel codice per te, come puoi vedere di seguito che elenca i programmi installati su un computer.
Una volta copiata e incollata questa funzione nella console di PowerShell o aggiunta allo script, è possibile chiamarla utilizzando un nome di computer particolare con il parametro ComputerName
.
Elenco del Software Installato con PowerShell
Quando lo fai, otterrai un oggetto per ciascun pezzo di software installato. Puoi ottenere una grande quantità di informazioni su qualunque software sia installato.
Se conosci il titolo del software in anticipo, puoi anche utilizzare il parametro Name
per limitare la ricerca solo al software che corrisponde a quel valore.
Ad esempio, forse desideri verificare solo se è installato Microsoft Visual C++ 2005 Redistributable (x64). Basterà utilizzare questo valore come parametro Name
, come mostrato di seguito.
Riassunto
Utilizzando PowerShell per ottenere informazioni sul software installato, puoi creare uno strumento completamente gratuito che tu e il tuo team potrete utilizzare per trovare facilmente il software installato su molti computer Windows contemporaneamente!
Source:
https://adamtheautomator.com/powershell-list-installed-software/