Você já teve dificuldade em criar um relatório de informações do sistema no seu computador? Coletar detalhes do sistema pode parecer difícil, mas a Ferramenta de Informações do Sistema Microsoft (MSInfo32) faz um trabalho rápido ao coletar todas essas informações!
Neste artigo, você dominará a geração e visualização de relatórios de informações do sistema em pouco tempo. Continue lendo para saber mais!
Pré-requisitos
Para este tutorial, você pode usar qualquer versão do Windows 10. A leitura de relatórios do sistema a partir da linha de comando requer o PowerShell. Este tutorial usa o Windows 10 versão 21H1 build 19043 e o PowerShell v7.1.
Visualizando um Relatório de Informações do Sistema
O primeiro passo para obter informações detalhadas sobre o seu sistema é abrir a ferramenta MSInfo32.
Para encontrar a ferramenta, pesquise por MSInfo32 no Menu Iniciar, e certifique-se de clicar na opção Executar como administrador.
Quando o MSInfo32 não é executado como administrador, ele não pode atualizar corretamente seu cache interno de informações, e alguns drivers podem aparecer como parados quando não estão.
Assim que a ferramenta abrir, ela apresentará um relatório, um gerado automaticamente. Você verá um resumo do hardware do seu computador na visualização Resumo do Sistema. Esta visualização apresenta uma visão geral da configuração do sistema. À esquerda, você verá categorias, que detalham ainda mais cada seção.

Salvando relatórios MSInfo32
Talvez você esteja prestes a fazer alterações de hardware no seu sistema e gostaria de salvar um relatório de informações do sistema para comparação ou relatório posterior. Com o MSInfo32, você tem duas opções para salvar essas informações: salvar e exportar. Você aprenderá sobre elas a seguir.
Você poderia clicar em Arquivo → Salvar para salvar as informações como um arquivo NFO, que é conhecido como Arquivo de Informações do Sistema. O arquivo NFO é um arquivo baseado em XML que pode ser posteriormente aberto pela ferramenta MSInfo32 para visualização no mesmo formato organizado.

Você pode ver um exemplo do arquivo XML NFO abaixo.
Você também poderia clicar em Arquivo → Exportar o que salva as informações como um arquivo de texto TXT que pode ser mais fácil de ler, mas não pode ser aberto posteriormente via Ferramenta de Informações do Sistema.

E abaixo você verá um exemplo do formato de arquivo de texto que o MSInfo32 exporta.
Scripting Exported Reports from MSInfo32
Agora que você sabe como gerar um relatório de informações do sistema a partir do MSInfo32, como você geraria um relatório NFO ou TXT a partir da linha de comando? Talvez você esteja criando um script e precise de uma maneira rápida de recuperar informações de hardware.
Abaixo estão duas opções diferentes usando a linha de comando para gerar tanto um relatório NFO quanto TXT.
Você pode encontrar muitos artigos desatualizados sobre o MSInfo32 onde você pode ver opções como
/categorias
,/categoria
,/pch
e/mostrarcategorias
. Estas estão disponíveis apenas no Windows XP, não disponíveis para o Windows 10.
Este primeiro exemplo demonstra a geração de um relatório TXT no mesmo diretório onde o comando é executado, como você pode ver na captura de tela a seguir.
Mesmo ao ser executado a partir da linha de comando, uma janela aparece onde você pode ver a atualização das informações do sistema antes da geração do relatório.

Este segundo exemplo demonstra a geração do relatório NFO, desta vez especificando o diretório onde o relatório será salvo. Esteja ciente de que o diretório deve existir antes de executar o comando. Caso contrário, ele falhará silenciosamente.
Embora qualquer extensão de arquivo funcione, como o relatório de exportação de informações do sistema é um arquivo NFO, a opção /nfo
, a convenção dita o uso da extensão .nfo para o relatório.
Lendo arquivos NFO via PowerShell
Ao longo deste tutorial, você aprendeu como gerar e exportar relatórios do MSInfo32. Mas você veio até Adam the Automator por um motivo, então aprenderá a automatizar o processo.
Relatórios NFO salvos podem ser abertos e visualizados no MSInfo32 através do menu Arquivo → Abrir. O problema é: uma interface gráfica não é ideal ao automatizar a recuperação de informações. Como os arquivos NFO são salvos como arquivos XML, o PowerShell pode analisar arquivos XML e recuperar essas informações.
Para ler o arquivo de relatório XML, abra uma janela do PowerShell e execute o comando Get-Content
, conforme mostrado na captura de tela abaixo. O [XML]
permite que o PowerShell leia o texto XML e o converta em objetos do PowerShell. Por fim, salve o resultado na variável $Report
. O comando resultante pode ser visto abaixo.

$Report
variable. Talvez você precise recuperar a lista de serviços que estavam em execução no momento em que o relatório foi gerado. Como os relatórios do MSInfo32 contêm essa informação, você pode recuperar a lista por meio do método SelectNodes()
.
O método
SelectNodes()
utiliza XPath. XPath é uma linguagem de consulta para XML. A elaboração de consultas XPath complexas está fora do escopo deste artigo.
A consulta XPath '//Category[@name="Software Environment"]/Category[@name="Services"]/Data'
servirá como exemplo. Suas partes são mostradas abaixo, para que você possa entendê-la e adaptá-la para vários cenários.
//Category[@name="Software Environment"]
– Retorna qualquer nó Category em todo o documento, indicado pelo duplo-slash precedente, com o nome “Software Environment”./Category[@name="Services"]
– Retorna o nó Category sob o nó “Software Environment” previamente retornado, que tem o nome “Services”./Data
– Retorna o nó filho Data sob o nó “Services” retornado anteriormente.
A estrutura de exemplo acima representa o Relatório do Sistema gerado automaticamente que vemos ao executar o MSInfo32. Você pode adaptá-lo construindo de acordo com a seção que você vê neles.
Ao passar a consulta XPath //Category[@name="Software Environment"]/Category[@name="Services"]/Data
para o método SelectNodes()
no objeto $Report
mostrado abaixo, todos os serviços do Windows são retornados como nós XML. Como os nós XML não estão exibindo uma saída esperada (O serviço Name
, DisplayName
e State
), o código abaixo cria um PSCustomObject
e formata a saída para caber na tela com Format-Table
.

Aqui está um exemplo adicional de como usar uma consulta XPath e o PowerShell para encontrar informações na categoria de Exibição do Relatório do Sistema. A consulta XPath em si é muito semelhante às anteriores, mas desta vez procurando pelas categorias Componentes e Exibição.

Conclusão
Neste artigo, você aprendeu como o MSInfo32 oferece uma maneira conveniente de gerar um relatório abrangente do sistema para um sistema local. Com as funções de salvar e exportar do MSInfo32, você aprendeu como exportar o status do sistema para analisar ao longo do tempo e usar o PowerShell para analisar as informações disponíveis.
Como você automatizaria o MSInfo32 em vários sistemas?