2012-07-10 19:45:02 +0000 2012-07-10 19:45:02 +0000
31
31

Liste todo o software instalado no PC

Existe algo incorporado no Windows que me permita listar todo o software instalado num computador de uma forma que possa ser copiado/colado numa folha de cálculo? Sei que há software que pode fazer isto, mas não consigo instalar nada. Preferia não utilizar um ficheiro de lote se possível, mas imagino que essa será a única forma de o fazer. Idealmente, seria capaz de produzir a mesma informação que é mostrada na vista (não expandida) do Formulário Adicionar/Remover Programas.

Respostas (8)

41
41
41
2012-07-10 19:58:16 +0000

Ligue a sua consola e escreva:

wmic product get name,version

Demora algum tempo, mas obterá a lista completa de programas instalados. WMIC é a versão de consola do Windows Management Instrumentation, disponível a partir do Windows 2000. Seguindo as instruções aqui e aqui , pode dizer a WMIC para produzir em formato XML, o que poderá ser um pouco mais conveniente para si. No entanto, basta chamar wmic product get name& para obter uma lista de nomes de aplicações, que pode facilmente copiar colar para um editor de texto e converter para o formato de folha de cálculo.

Em alternativa, digite:

wmic /output:C:\InstallList.txt product get name,version

Isto produzirá um ficheiro TXT com a lista de programas. Pode então colar isso numa folha de cálculo, se quiser.

Fonte: http://helpdeskgeek.com/how-to/generate-a-list-of-installed-programs-in-windows/


Também pode usar o ficheiro csv.xsl para formatar a saída numa lista de resultados CSV:

wmic /output:C:\InstallList.csv product get /format:csv.xsl

ou o ficheiro htable.xsl para criar uma tabela HTML de resultados:

wmic /output:C:\InstallList.htm product get /format:hform.xsl
8
8
8
2012-07-10 19:54:54 +0000

Executar wmic product get para obter uma lista de software instalado, deve ser exactamente a mesma lista que os programas add/remove.

Pode supostamente fazer com que ele saia num formato específico, mas eu ainda não o experimentei.

(Use wmic product get /? para ver os parâmetros incluindo a formatação de saída, tentei incluí-lo aqui, mas a formatação não estava bem).

5
5
5
2012-07-10 20:13:18 +0000

Como outros já mencionaram, pode obter esta informação com uma consulta WMI para objectos Win32_Product. PowerShell irá mesmo despejá-lo num ficheiro CSV para si, se desejar.

Get-WmiObject -Class "Win32_Product" | Export-CSV (Join-Path $home "Win32_Product.csv")

Contudo, deverá procurar por questões de Win32_Product . Nem tudo são gotas de chiclete e chupa-chupas.

4
4
4
2014-10-09 19:14:03 +0000

WMIC não funcionará num Servidor a menos que tenha explicitamente instalado Management and Monitoring Tools no menu Add/Remove Windows Components .

Outra solução é ir ao Registo e olhar para todos os Programas Instaláveis indo para:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

Terá de clicar individualmente em cada um deles para ver o valor, por isso, em vez disso, pode clicar com o botão direito do rato na pasta Uninstall e seleccionar Exportar*. Certifique-se que o Export Range está definido para incluir apenas o Selected Branch:

^(?!"DisplayName").+

Depois pode abrir o ficheiro .reg no bloco de notas+++, mas vai obter muita informação extra sobre cada aplicação:

Pode ver-se livre de todas as linhas que não começam com "DisplayName" fazendo corresponder a seguinte regex :

("DisplayName"="|")

Depois pode remover ou string "DisplayName" ou " combinando na seguinte regex :

^(.*)(\r?\n)+$

Depois pode remover linhas duplicadas fazendo corresponder em a seguinte regex :

Ou pode simplesmente ordenar linhas alfabeticamente e depois apagar as em branco

3
3
3
2013-07-11 10:53:37 +0000

A maneira mais fácil que encontrei foi através da limpeza da piriforme.
Isto tem um botão em Tools -> Uninstall -> “save to text file” (Desinstalar)

0
0
0
2017-03-05 15:59:46 +0000

Duas outras soluções sem linha de comando não mencionadas anteriormente são:

  1. MyUninstaller - um programa freeware da NirSoft que, além de desinstalar, pode também exportar para HTML uma lista completa de todo o software instalado que inclui muita informação adicional. Tem a vantagem de ser portátil. Embora não seja “incorporado”, pode executá-lo a partir de uma unidade USB. Pode encontrá-lo aqui .

  2. Belarc Advisor - um programa freeware (para uso pessoal) que faz análise de segurança e inventário exaustivo do hardware e software do seu computador. Está disponível aqui . Infelizmente, deve instalá-lo, pelo que não satisfaz plenamente as necessidades do OP, mas pode satisfazer as necessidades de outros que têm a mesma pergunta e são capazes de instalar.

0
0
0
2017-07-12 14:57:08 +0000

A versão codificada em c# programas instalados via registo

using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

namespace SoftwareInventory
{
    class Program
    {
        static void Main(string[] args)
        {
            //!!!!! Must be launched with a domain administrator user!!!!!
            Console.ForegroundColor = ConsoleColor.Green;
            StringBuilder sbOutFile = new StringBuilder();
            Console.WriteLine("DisplayName;IdentifyingNumber");
            sbOutFile.AppendLine("Machine;DisplayName;Version");

            //Retrieve machine name from the file :File_In/collectionMachines.txt
            //string[] lines = new string[] { "NameMachine" };
            string[] lines = File.ReadAllLines(@"File_In/collectionMachines.txt");
            foreach (var machine in lines)
            {
                //Retrieve the list of installed programs for each extrapolated machine name
                var registry_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
                using (Microsoft.Win32.RegistryKey key = RegistryKey.OpenRemoteBaseKey(RegistryHive.LocalMachine, machine).OpenSubKey(registry_key))
                {
                    foreach (string subkey_name in key.GetSubKeyNames())
                    {
                        using (RegistryKey subkey = key.OpenSubKey(subkey_name))
                        {
                            //Console.WriteLine(subkey.GetValue("DisplayName"));
                            //Console.WriteLine(subkey.GetValue("IdentifyingNumber"));
                            if (subkey.GetValue("DisplayName") != null && subkey.GetValue("DisplayName").ToString().Contains("Visual Studio"))
                            {
                                Console.WriteLine(string.Format("{0};{1};{2}", machine, subkey.GetValue("DisplayName"), subkey.GetValue("Version")));
                                sbOutFile.AppendLine(string.Format("{0};{1};{2}", machine, subkey.GetValue("DisplayName"), subkey.GetValue("Version")));
                            }
                        }
                    }
                }
            }
            //CSV file creation
            var fileOutName = string.Format(@"File_Out\{0}_{1}.csv", "Software_Inventory", DateTime.Now.ToString("yyyy_MM_dd_HH_mmssfff"));
            using (var file = new System.IO.StreamWriter(fileOutName))
            {

                file.WriteLine(sbOutFile.ToString());
            }
            //Press enter to continue 
            Console.WriteLine("Press enter to continue !");
            Console.ReadLine();
        }

    }
}
0
0
0
2016-08-14 20:52:43 +0000

No Windows 7 pode usar um guião PowerShell:

Abra PowerShell clicando no botão Start e escrevendo powershell no campo de pesquisa.

Depois introduza o seguinte comando na Janela PowerShell:

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

É possível remover qualquer um dos campos: DisplayName, DisplayVersion, etc., se não precisar deles.

Se quiser guardar a saída para um ficheiro, use o redireccionamento:

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table –AutoSize > C:\temp\AllInstalledPrograms.txt