Como descobrir a finalidade dos programas instalados no seu computador. Como obter uma lista de programas instalados usando o Windows PowerShell. A barra de rolagem horizontal serve

Esta instrução simples contém duas maneiras de obter uma lista de texto de todos os programas instalados no Windows 10, 8 ou Windows 7 usando ferramentas integradas do sistema ou software gratuito de terceiros.

Por que isso pode ser necessário? Por exemplo, uma lista programas instalados pode ser útil ao comprar um novo computador ou laptop e personalizá-lo “para você”. Outros cenários também são possíveis – por exemplo, para identificar software indesejado na lista.

O ícone Meu Computador é para

Seguindo as dicas acima, você garantirá que seu computador tenha sempre o máximo desempenho garantido e ainda tenha uma longa vida útil. A coluna de hoje demonstrará como determinar facilmente quais programas estão acessando a rede e consumindo dados sem que o usuário perceba. Usuários experientes certamente possuem proficiência em ferramentas ou funções de gerenciamento de sistema operacional. Porém, por exigir conhecimentos avançados de informática, o uso de técnicas de administração de rede torna-se uma barreira para quem deseja apenas identificar possíveis gargalos na rede. rede doméstica.

Obtendo uma lista de programas instalados usando o Windows PowerShell

O primeiro método usará um componente de sistema padrão - Windows PowerShell. Para iniciá-lo, você pode pressionar as teclas Win + R do teclado e digitar Powershell ou usar Pesquisa do Windows 10 ou 8 para começar.

Para exibir lista completa programas instalados no computador, basta digitar o comando:

E para facilitar essa tarefa, existem programas com interface intuitiva que fornecem informações sobre o consumo de dados da rede sem complicações. O programa monitorará todos os programas que acessam a Internet. Em muitos casos, existem programas que são carregados durante a inicialização sistema operacional e passam despercebidos pelo usuário. Mas eles não prejudicam a velocidade da rede.

O programa tem suas funções distribuídas em quatro abas. Um gráfico é uma representação que corresponde à quantidade de dados que circula na rede, sendo que cada cor do gráfico representa o consumo de um programa específico. Firewall é um recurso que permite bloquear um ou mais programas que consomem dados com um clique. Para bloquear um programa, basta clicar no ícone da chama.

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

O resultado será exibido diretamente na janela do PowerShell na forma de uma tabela.


Para exportar automaticamente uma lista de programas para arquivo de texto, o comando pode ser usado da seguinte forma:

Rede é um recurso avançado que permite visualizar todos os dispositivos conectados na rede, está disponível apenas na versão paga do programa. Alertas são notificações sobre diagnósticos de rede e executando programas. O ideal é que apenas o sistema operacional esteja conectado – outros programas devem ser verificados individualmente para permitir o acesso à rede.

Para bloquear o acesso, basta usar o recurso de firewall. Para que o computador funcione perfeitamente, além de um sistema operacional estável, também é necessário instalar os drivers apropriados para cada componente de hardware, como placa de som, rede sem fio, vídeo e outros. Driver é um pequeno programa que conecta Hardware com o sistema operacional. Sem este programa, o dispositivo pode não funcionar corretamente.

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Formato-Tabela -AutoSize > D:\programs-list.txt

Após executar o comando acima, a lista de programas será salva no arquivo program-list.txt na unidade D. Nota: Ao especificar a raiz da unidade C para salvar o arquivo, você poderá receber um erro "Acesso negado" se você precisa salvar a lista especificamente para disco do sistema, crie sua própria pasta (e salve-a nela) ou execute o PowerShell como administrador.

Em muitos casos, os sistemas operacionais já possuem amplo suporte para os dispositivos mais populares. Entretanto, quando algum componente não for automaticamente suportado pelo sistema, você deverá instalar o mais driver adequado para o dispositivo. Para facilitar a tarefa de administração de dispositivos periféricos, existem programas responsáveis ​​por listar todos os componentes do computador, verificar a funcionalidade dos drivers, cópia de segurança e, se necessário, procurar um instalador online.

Após a instalação, execute o programa e crie conta, em que será liberado o acesso ao serviço de atualização de drivers oferecido pelo desenvolvedor do programa. A categoria Downloads e informações de drivers permite que o programa faça um inventário completo do seu computador. Através deste inventário o programa irá exibir todos os seus equipamentos e versões drivers instalados. Você também pode verificar se há atualizações, ver mais informações sobre os componentes do seu computador e determinar se algum componente não está funcionando corretamente.

Outra adição - o método acima salva uma lista apenas de programas para o trabalhador Área de trabalho do Windows, mas não aplicativos de Loja do Windows 10. Para obter uma lista deles, use o seguinte comando:

Get-AppxPackage | Selecione Nome, PackageFullName |Format-Table -AutoSize > D:\store-apps-list.txt

Leia mais sobre a lista de tais aplicações e operações sobre elas no material:.

Obtendo uma lista de programas instalados usando software de terceiros

Para obter uma lista Programas do Windows no CCleaner faça o seguinte:

Para fazer isso, clique no botão Verificar online para atualizar os drivers. Para que o serviço conclua esta tarefa com êxito, o computador deve estar conectado à Internet. Criando um inventário das versões de driver instaladas no computador. Em alguns segundos, seu equipamento estará inventariado. O relatório será exibido no site do fornecedor. Os dados nele contidos ficam à disposição do usuário que você cadastrou.

Como descobrir os parâmetros, propriedades e informações de um PC ou laptop

Você pode criar cópia de segurança drivers instalados em seu computador e restaure-os quando precisar deles. A eficácia do programa está associada à disponibilidade de uma extensa biblioteca de drivers por parte do fabricante do software. Quanto mais popular for o hardware, maior será a disponibilidade de drivers para ele.



Ao mesmo tempo, o CCleaner armazena na lista programas de desktop e aplicativos da Windows Store (mas apenas aqueles que estão disponíveis para remoção e não estão integrados ao sistema operacional, ao contrário da maneira de obter essa lista no Windows PowerShell).

Isso, talvez, seja tudo sobre este assunto; espero que para alguns dos leitores a informação seja útil e encontre sua aplicação.

O programa fornece drivers para os dispositivos mais populares. Não pode testar o que está acontecendo em outras tecnologias. Se sim, saiba que existe uma solução para esse problema. Com isso, esses programas frequentes também são eliminados. Mas antes de fazer isso, é importante ter cuidado: esse processo também remove programas que você comprou posteriormente, bem como arquivos sobre eles. Portanto, é importante entender que você deverá reinstalá-los posteriormente.

Este processo também remove drivers atualizados que podem causar problemas em alguns componentes. Para garantir, leia atentamente os avisos na página. Inicie o programa que você acabou de baixar. Leia os termos da licença e clique em Aceitar.

Os administradores de sistema geralmente precisam determinar quais programas estão instalados nos computadores das redes que atendem. Há uma série de circunstâncias que os obrigam a auditar regularmente os aplicativos instalados em sistemas corporativos. Acontece que um administrador instala um pacote de software, esquece de documentá-lo e depois descobre que o sistema de segurança do pacote apresenta vulnerabilidades. Às vezes, os usuários recebem direitos administrativos, permitindo-lhes instalar produtos de software de forma independente em seus computadores. Também existe esse perigo: um usuário que assumiu arbitrariamente direitos de administrador pode instalar software não autorizado, abrindo assim a possibilidade de responsabilizar legalmente a organização.

Novamente, leia os avisos com atenção; se estiver tudo bem, clique em “Iniciar”. Isso significa que ele nem terá programas pré-instalados do fabricante. Fonte, tipografia e computação são um tipo de impressão, fontes visíveis e na tela são padrões gráficos que você escreve em seu computador. As fontes têm algum significado no mundo gráfico, marketing e negócios. Muitas vezes, nos escritórios, é necessário usar uma fonte especial para documentos oficiais. Você pode então escrever o documento e as planilhas no computador com uma escrita única e personalizada.

Fornecedores independentes oferecem ferramentas para monitorar o software instalado, mas as pequenas empresas podem não ter os recursos para implementar tal solução. Nossa empresa não tinha uma ferramenta de auditoria de software, então escrevi Script do Windows PowerShell Get-InstalledApp.ps1 (consulte a listagem). Antes de começar a descrever o procedimento para usar este script e o mecanismo de sua operação, gostaria de me debruçar sobre dois métodos de detecção de software instalado usando um script e explicar por que me senti atraído pelo método que escolhi.

Como obter de forma rápida e fácil uma lista de programas instalados, mesmo sem instalar utilitários de terceiros?

Você também pode clicar com o botão direito no arquivo e selecionar "Instalar" em menu contextual. Para cada fonte listada, você pode visualizar uma visualização, imprimir uma página de teste e excluir o caractere do computador. Também podemos desinstalar um programa clicando com o botão direito sobre ele e selecionando a entrada “desinstalar”. Você pode navegar gratuitamente por cubos e coleções de fontes em sites como. Fazendo isso, você sempre terá uma lista de programas que precisam ser reinstalados ou instalados em outros computadores que ainda estejam configurados.

Classe ou registro Win32_Product

No kit de ferramentas Gerenciamento do Windows Management Instrumentation (WMI) possui uma classe Win32_Product que permite registrar aplicativos instalados em um computador. O PowerShell torna esse recurso fácil de implementar. Sim, equipe

Get-WmiObject Win32_Product
| selecione o nome

gera uma lista de todos os aplicativos instalados no computador que está sendo examinado. No entanto, deve ser dito que a classe Win32_Product tem várias limitações.

Crie uma lista de programas instalados usando software de terceiros

A seção Licenças de software exibirá uma chave de produto diferente. Ter outros programas para usar como alternativa é sempre bom. Nesse caso, você pode descobrir quantos computadores possui, quais hardware e software possui.

Mesmo que você não precise escanear embaixo das mesas ou mesmo abri-las. A vantagem é que não precisam ser instalados. Após iniciar a visão geral, a última tela exibe uma tela com informações sobre os instalados Programas, informações de licença, dispositivos periféricos, memória, velocidade do processador, identificação do modelo, configurações de rede, lançamento do programa e outras informações.

  • Ele lê apenas os nomes dos aplicativos que foram instalados usando Serviços do Windows Instalador. Os nomes dos aplicativos instalados por outros meios não são lidos por esta classe. Isso significa que usar a classe Win32_Product para realizar auditoria geral Programas Isso não é possível, a menos que você esteja usando o Windows Installer exclusivamente para instalar pacotes, o que não é prático na maioria das redes.
  • A leitura de instâncias da classe Win32_Product é muito lenta.
  • Nem sempre é possível ler instâncias da classe Win32_Product em computadores remotos. Portanto, quando tento realizar um procedimento semelhante na minha rede, recebo uma mensagem de erro de falha genérica.

Esses problemas tornam menos prático o uso da classe WMI Win32_Product. No entanto, há método alternativo obtenção de informações sobre aplicativos instalados - diretamente do registro. As informações sobre os aplicativos instalados em seu computador estão contidas na chave de registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Cada subseção da seção Desinstalar representa um aplicativo instalado e os valores em cada subseção exibem informações sobre o aplicativo correspondente, conforme mostrado na tela. Assim, para obter uma lista de aplicativos, você pode “pentear” a seção Desinstalar e ler os dados de cada subseção incluída na seção Desinstalar.

Janelas. Como mudar o design da área de trabalho

O aplicativo é totalmente localizado, com exceção da ajuda. Neste caso, não pode ser reproduzido sem estes filtros. Inclui muitas outras ferramentas, ajustes e ferramentas de edição de imagens, por isso não é adequado apenas para usuários experientes, mas também para quem entende do problema do vídeo. Se não quiser alterar nada nas configurações, é claro que você pode deixar todos os valores nas configurações padrão. Outra prioridade disso é o que pode interferir no sistema.

O provedor de registro do PowerShell oferece a capacidade de executar o comando Get-ChildItem para obter uma lista de nomes de aplicativos instalados no computador que você está vendo:

Get-ChildItem HKLM:\SOFTWARE\
Microsoft\Windows\Versão Atual\
Desinstalar |
ForEach-objeto ((Get-ItemProperty
Microsoft.PowerShell.Core\Registry::$_).
Nome de exibição)

No entanto, no PowerShell 1.0, o comando Get-ChildItem não fornece acesso ao provedor de registro em computador remoto, portanto, o administrador deve usar StdRegProv, a classe de gerenciamento de registro WMI, para atingir esse objetivo. A classe StdRegProv fornece um conjunto útil de métodos que facilitam a leitura do registro, independentemente de estar interagindo com o sistema, local ou remoto. Informações adicionais informações sobre a classe StdRegProv podem ser encontradas na página da classe StdRegProv no site do MSDN (http://msdn.microsoft.com/en-us/library/aa393664.aspx).

Esta versão também é novo recurso criando bits sem iniciar o sistema operacional que cria imagens rasterizadas usuários de computador sem instalar o produto. Com os aplicativos, você pode fazer backup de todo o seu sistema operacional e, se necessário, restaurá-lo a qualquer momento. Isso pode ser útil após o ataque ao código do programa amaldiçoado. Você pode fazer backup de acordo com um plano ou com base em um evento. Graças a uma função especial, você pode realizar um backup mesmo durante o trabalho, sem ter que desligar o computador ou reiniciá-lo em modo especial.

Como trabalhar com o script Get-InstalledApp.ps1

O script Get-InstalledApp.ps1 lê informações sobre os aplicativos instalados no registro e retorna uma lista de todos aplicativos instalados ou uma lista de aplicativos que atendem aos critérios especificados. O script usa a seguinte sintaxe de linha de comando:

Get-InstalledApp [-nome do computador]
[-appID] [-appname]
[-editor] [-versão] [-matchall]

O número de viagens de negócios não é uma questão simples. Você precisa conhecer um monte de fãs e ainda a fórmula que deseja que eles façam. Encontrar uma viagem de trabalho local é um programa que facilita o seu trabalho. Você dá tudo o que precisa e depois de um tempo saberá o que precisa fazer.

Recebo uma mensagem informando que meu computador não possui recursos multimídia

Em seguida, tente resolver o problema seguindo o procedimento. Se a janela Downloads de arquivos não aparecer, talvez seja necessário alterar as configurações do bloqueador de pop-ups do seu navegador. Ajuda do aplicativo para este procedimento. Na janela Propriedades da Internet, vá para a guia Avançado. Em Configurações, em Segurança, desmarque a caixa de seleção “Não salvar páginas criptografadas no disco”.

O parâmetro computername é usado para exibir uma lista de nomes de um único computador ou uma lista de nomes de computadores. O parâmetro computername é o primeiro parâmetro, portanto, para encurtar o comando, você pode omitir a opção -computername e incluir apenas o nome do computador no comando. Se você excluir completamente esse parâmetro, o script assumirá que você deseja recuperar dados do computador local.

Uma janela no Windows é

E você verá o sistema que está usando. O problema ocorre se o sistema falhar ou se você tiver imagem do sistema. Nesse caso, você pode usar várias opções para determinar o sistema operacional instalado. Infelizmente, nem todas as listagens listadas contêm todas as informações.

Preencha o nome com o qual o registro será conectado. Em seguida, clique no registro anexado e selecione Free Hive na guia Arquivo. Você achará isso bastante simples. Na guia Detalhes veremos a versão do arquivo onde a versão do arquivo corresponde à versão do sistema operacional. Infelizmente, não sabemos se este é um sistema de 32 ou 64 bits. Vamos começar na tela inicial, onde você primeiro iniciará o botão Navegar para encontrar arquivos que podem ser excluídos. Preste atenção nas marcas de controle que indicam quais dados serão excluídos, para que você não precise se preocupar com o que ainda precisa.

O parâmetro -appID é usado para procurar aplicativos por seus identificadores (ID do aplicativo). O ID do aplicativo é uma subchave do registro que pertence à chave Uninstall. Na tela, o ID do aplicativo é destacado no painel esquerdo. Para aplicativos instalados usando Instalador do Windows, o ID do aplicativo será equivalente ao identificador exclusivo global (GUID) do ID do produto do aplicativo correspondente. Usando o parâmetro -appID - A melhor maneira detectar aplicativos específicos instalados usando o serviço instalador do Windows.

O parâmetro -appname é usado para procurar aplicativos pelo nome de exibição. O nome de exibição é o nome do aplicativo conforme aparece na lista Adicionar/Remover Programas ou o valor DisplayName na subchave do aplicativo correspondente. Assim, na tela, o aplicativo selecionado tem o nome de exibição OpenOffice.org 2.4.

O parâmetro -publisher é usado para procurar aplicativos por editor. Se você não sabe exatamente quem é o editor de um aplicativo, poderá encontrá-lo na entrada Editor na subchave do registro desse aplicativo. Assim, o editor do aplicativo selecionado na tela é OpenOffice.org.

O parâmetro -version é usado para procurar aplicativos com base em suas versões. Se você não sabe ao certo qual é a versão de um aplicativo, você pode ler esses dados no parâmetro DisplayVersion da subseção do aplicativo. Por exemplo, o aplicativo destacado na tela possui a versão 2.4.9286.16.

Se você especificar a opção -matchall para o arquivo Get-InstalledApp.ps1, o script retornará todos os aplicativos que correspondem aos critérios especificados, em vez de interromper a pesquisa após a primeira correspondência ser encontrada. Sim, equipe

Get-InstalledApp -publisher
"Microsoft Corporation" -matchall

retornará uma lista de todos Aplicativos da Microsoft instalado no computador em estudo. Se você omitir a opção -matchall, o script interromperá a pesquisa após encontrar a primeira correspondência.

Todas as chaves listadas (-appID, -appname, -publisher e -version) suportam pesquisa usando caracteres curinga; argumentos-chave não diferenciam maiúsculas de minúsculas. Sim, equipe

Get-InstalledApp -appname
"*escritório*" -matchall

exibe uma lista de todos os aplicativos instalados no computador sob investigação que possuem a palavra office em seus nomes. Além disso, para especificar critérios de pesquisa mais detalhados, é possível especificar os parâmetros -appID, -appname, -publisher e -version em qualquer combinação. Sim, equipe

Get-InstalledApp sales01-appname
"*.Estrutura NET*" -versão 2*"

imprime o primeiro aplicativo que contém as palavras .NET Framework em seu nome de exibição e tem um número de versão que começa com 2. Se nenhum aplicativo for encontrado que atenda aos critérios especificados, o script não retornará nenhum valor. Para obter mais informações sobre curingas no PowerShell, execute o comando

Obter ajuda sobre_wildcard

O script Get-InstalledApp.ps1 retorna objetos contendo as propriedades ComputerName, AppID, AppName, Publisher e Version para que você possa usar comandos do PowerShell e formatar a saída para atender às suas necessidades. Sim, equipe

Instale o aplicativo | Selecione-Objeto AppName,
Versão |
Nome do aplicativo de objeto de classificação

Exibe uma lista de aplicativos e a versão de cada aplicativo, classificada por nome do aplicativo. Para usar valores separados por vírgula para criar um relatório sobre todos produtos de software instalado em todos os computadores listados no arquivo Computers.txt, você precisa usar o comando

Get-InstalledApp(Get-Content
Computadores.txt) |
Exportar-CSV Report.csv -notypeinformation

O parâmetro -NoTypeInformation do comando Export-CSV impede que informações sejam passadas para o arquivo CSV de saída. Equipe

Get-InstalledApp(Get-Content
Computadores.txt)
-appID "(7131646D-CD3C-40F4-97B9-
CD9E4E6262EF)" |
Selecionar objeto Nome do computador

gera uma lista de computadores mencionados no arquivo Computers.txt nos quais a biblioteca .NET Framework 2.0 está instalada. Se você deseja obter uma lista ordenada de aplicativos Microsoft instalados no sistema sob investigação e suas versões, classificados por nomes de aplicativos, use o comando

Get-InstalledApp -publisher
"Microsoft Corporation" -matchall |
Select-Object AppName, Versão |
Nome do aplicativo de objeto de classificação

Internos do script Get-InstalledApp.ps1

Agora que você sabe como usar o script Get-InstalledApp.ps1, vamos ver como ele funciona. O script primeiro declara os parâmetros da linha de comando usando o comando param; em seguida, ele cria duas variáveis ​​globais para uso posterior com a classe StdRegProv. O script então declara a função de uso e a função principal. A última linha do script chama a função principal.

A função principal contém o corpo principal do script. Em primeiro lugar, ela descobre se há linha de comando parâmetro -ajuda. Nesse caso, a função principal chama a função de uso, que gera uma mensagem de uso e encerra o script.

A seguir, a função main cria uma tabela hash vazia e a armazena na variável $propertyList, conforme mostrado na Listagem A.

Se pelo menos um dos parâmetros (-appID, -appname, -publisher ou -version) estiver presente na linha de comando, a função adiciona a chave correspondente ao nome do parâmetro à tabela hash e define o valor desta chave como o argumento do parâmetro. Sim, equipe

Get-InstalledApp -appname
"Ferramentas de suporte do Windows"

instrui a função principal a preencher a tabela hash usando a chave AppName, que está definida como Ferramentas de Suporte do Windows.

A função principal então verifica se o nome do computador está vazio. Se o parâmetro estiver vazio, a função usa o nome computador local, obtido da variável de ambiente COMPUTERNAME. Se o parâmetro não estiver vazio, a função itera pela matriz de nomes de computadores usando um loop foreach. O loop será executado apenas uma vez se o argumento nomedocomputador for o nome de um único computador.

Dentro do loop foreach, a função principal declara a variável $err e define seu valor como $NULL. A função então usa um scriptblock trap para capturar erros WMI, conforme mostrado na Listagem B. Quando ocorre um erro, o bloco de script de gancho atualiza a variável de erro para o nível do registro de erro atual (ou seja, define-a como $ERROR ) e continua executando o comando após o erro.

Em seguida, a função principal é conectada à classe StdRegProv no computador de destino usando o acelerador de tipo da classe System.Management.ManagementClass do Windows .NET Framework. Caso ocorra um erro, este é detectado por meio de um bloco de script especial apresentado no fragmento C da listagem. Se o valor de $err não for $NULL, significa que um bloco de script "hook" foi executado. Nesse caso, a função principal gera um registro de erro usando o comando Write-Error e, em seguida, usa o comando continue para pular o restante do loop foreach e passar para o próximo nome de computador na matriz.

A função principal então usa o método EnumKey da classe StdRegProv para enumerar as subchaves da seção Uninstall. O resultado da aplicação do método EnumKey – uma matriz de nomes de subchaves – é armazenado na propriedade sNames. A função então itera pela matriz de nomes de subseções usando outro loop foreach.

Ao processar cada nome de subchave apresentado no array, a função principal lê a propriedade DisplayName da chave de registro correspondente usando o método GetStringValue da classe StdRegProv. Usando o comando Join-Path, a função anexa o nome da subchave à chave Uninstall. A rota de registro resultante é usada como argumento para o método GetStringValue, que retorna o valor da entrada de registro. Este deve ser um valor de string. Este método leva três argumentos: ramificação do registro, caminho da chave e nome do parâmetro. GetStringValue retorna um objeto contendo duas propriedades: a propriedade ReturnValue, que inclui um valor que indica se a chamada do método foi bem-sucedida ou falhou, e a propriedade sValue, que contém o valor da string. A função principal atribui o valor da propriedade sValue à variável $name.

Se o valor de $name não for $NULL, a função principal criará um objeto de saída personalizado que contém quatro propriedades: ComputerName, AppID, AppName, Publisher e Version. Ele atualiza a propriedade do objeto ComputerName com o nome do computador que está sendo examinado, a propriedade do objeto AppID com o nome da subchave atual e a propriedade do objeto AppName com o nome de exibição do aplicativo atual. A função então usa o método GetStringValue duas vezes para recuperar os valores dos registros Publisher e DisplayVersion para atualizar as propriedades correspondentes no objeto personalizado com esses valores.

Portanto, a função principal concluiu a recuperação de informações sobre o aplicativo atual e agora está verificando as chaves na tabela hash $propertyList; Para fazer isso, a propriedade Count da coleção Keys é verificada. Se a tabela hash não contiver chaves (ou seja, se nenhuma das opções (-appID, -appname, -publisher e -version) for fornecida na linha de comando), a função simplesmente gerará um objeto personalizado para descobrir qual Os argumentos da opção de linha de comando correspondem aos valores das propriedades do objeto personalizado. A Listagem D mostra como a função main realiza essa tarefa.

Primeiro, o valor da variável $matches é definido como 0 e, em seguida, o código percorre todos os elementos da coleção Keys da tabela hash $propertyList. Para cada chave na tabela hash $propertyList, a função usa o operador de ambiente semelhante ao PowerShell para determinar se essa propriedade do objeto personalizado corresponde ao valor equivalente na tabela hash $propertyList. Se os valores dos elementos especificados corresponderem, a função aumenta o valor da variável $matches. Se o número de correspondências for igual ao número de chaves na tabela hash, a função principal gera um objeto personalizado. Finalmente, se a opção -matchall não estiver presente na linha de comando, a função usará o comando break para sair do loop foreach usado para iterar pelas subchaves do registro.

Assim, o script Get-InstalledApp.ps1 permite obter uma lista de aplicativos instalados em um ou mais computadores sem muitos problemas. Além disso, pode organizar pesquisas para aplicativos específicos. Talvez seja possível usar este cenário para monitorar software instalado em computadores da sua rede.



gastroguru 2017