Se você é um administrador de sistema, um dos seus trabalhos é instalar, atualizar e remover software de muitos sistemas. E se eu te dissesse que você não precisa mais se conectar a cada máquina e verificar manualmente o software instalado? Você pode realmente listar o software instalado com o PowerShell!
Neste post do blog, vou te mostrar como listar o software instalado com o PowerShell na sua máquina local e em muitos computadores de uma vez.

Observe que alguns artigos podem indicar para fazer algo como
Get-WmiObject -Class win32_product
. Não faça isso. Saiba o porquê aqui.
Software Instalado e o Registro
Para referência, o software instalado existe em três locais:
- a chave de registro de desinstalação do sistema de 32 bits
- a chave de registro de desinstalação do sistema de 64 bits
- a chave de registro de desinstalação do perfil de usuário.
Cada entrada de software é tipicamente definida pelo identificador único global (GUID) do software. O interior da chave GUID contém todas as informações sobre aquele software específico. Para obter uma lista completa, o PowerShell deve enumerar cada uma dessas chaves, ler cada valor do registro e analisar os resultados.
Uma vez que o código para analisar corretamente esses valores é muito extenso para ser abordado em um único artigo, eu já criei uma função chamada Get-InstalledSoftware
para listar o software instalado com o PowerShell, que encapsula todo esse código, como você pode ver abaixo, que lista os programas instalados em um computador.
Depois de copiar e colar essa função em seu console do PowerShell ou adicioná-la ao seu script, você pode chamá-la usando um nome de computador específico com o parâmetro ComputerName
.
Listar Software Instalado com PowerShell
Quando você faz isso, receberá um objeto para cada software instalado. Você pode obter uma quantidade rica de informações sobre qualquer software que esteja instalado.
Se você conhece o título do software com antecedência, também pode usar o parâmetro Name
para limitar apenas ao software que corresponda a esse valor.
Por exemplo, talvez você queira verificar apenas se o Microsoft Visual C++ 2005 Redistributable (x64) está instalado. Você simplesmente usaria isso como o valor do parâmetro Name
, conforme mostrado abaixo.
Resumo
Usando o PowerShell para obter software instalado, você pode construir uma ferramenta completamente gratuita que você e sua equipe podem usar para encontrar facilmente o software instalado em muitos computadores Windows de uma só vez!
Source:
https://adamtheautomator.com/powershell-list-installed-software/