Si eres un administrador de sistemas, una de tus tareas es instalar, actualizar y eliminar software de muchos sistemas. ¿Qué tal si te digo que ya no tienes que conectarte a cada máquina y verificar manualmente el software instalado? ¡En realidad, puedes listar el software instalado con PowerShell!
En esta publicación de blog, te mostraré cómo listar el software instalado con PowerShell en tu máquina local y en muchas computadoras a la vez.

Ten en cuenta que algunos artículos pueden decirte que hagas algo como
Get-WmiObject -Class win32_product
. No lo hagas. Aprende por qué aquí.
Software instalado y el Registro
Para referencia, el software instalado existe en tres ubicaciones:
- la clave del registro de desinstalación del sistema de 32 bits
- la clave del registro de desinstalación del sistema de 64 bits
- la clave del registro de desinstalación de cada perfil de usuario.
Cada entrada de software generalmente está definida por el identificador único global (GUID) del software. El interior de la clave GUID contiene toda la información sobre ese software en particular. Para obtener una lista completa, PowerShell debe enumerar cada una de estas claves, leer cada valor del registro y analizar los resultados.
Dado que el código necesario para analizar correctamente estos valores es mucho más extenso de lo que puede contener un solo artículo, he preconstruido una función llamada Get-InstalledSoftware
para enumerar el software instalado con PowerShell, que envuelve todo ese código, como se puede ver a continuación, que lista los programas instalados en una computadora.
Una vez que copie y pegue esta función en su consola de PowerShell o la agregue a su script, puede llamarla utilizando un nombre de computadora específico con el parámetro ComputerName
.
Listar Software Instalado con PowerShell
Cuando haga esto, obtendrá un objeto por cada software instalado. Podrá obtener una gran cantidad de información sobre cualquier software que esté instalado.
Si conoces el título del software de antemano, también puedes usar el parámetro Name
para limitar solo al software que coincida con ese valor.
Por ejemplo, tal vez solo quieras verificar si está instalado Microsoft Visual C++ 2005 Redistributable (x64). Simplemente usarías esto como el valor del parámetro Name
como se muestra a continuación.
Resumen
¡Usando PowerShell para obtener el software instalado, puedes construir una herramienta completamente gratuita que tú y tu equipo pueden usar para encontrar fácilmente el software instalado en muchas computadoras con Windows a la vez!
Source:
https://adamtheautomator.com/powershell-list-installed-software/