Список всех установленных программ на ПК

Есть ли что-нибудь встроенное в Windows, которое позволит мне перечислить все установленное программное обеспечение на компьютере так, как это можно скопировать / вставить в электронную таблицу? Я знаю, что есть программное обеспечение, которое может это сделать, но я ничего не могу установить. Я бы предпочел не использовать командный файл, если это возможно, но я думаю, что это будет единственный способ. В идеальном случае я мог бы выводить ту же информацию, что и на (нерасширенном) представлении формы «Установка и удаление программ».

  • Что может заставить Windows случайным образом сбросить системное время на случайное время?
  • Как создать «Отправить на« FOLDER »« похожее на отправку на рабочий стол ярлыка?
  • Захват видеоэкрана, который поддерживает виртуальный рабочий стол
  • Каковы эти особые имена и как они работают?
  • Какова цель config \ Software.log
  • Не удается удалить папку. Бесконечно зацикленные папки, созданные друг в друге
  • Есть ли способ, которым пользователь может просматривать или копировать не редактируемые элементы управления GUI во время выполнения?
  • Включение учетной записи администратора в Windows 7
  • Как сделать снимок экрана над окном, большим, чем экран
  • Не удалось использовать Windows Search для поиска файла с вопросительным знаком в контенте
  • Ярлык в Windows 7 для переключения между окнами одного приложения, например Cmd + `в OS X
  • Как создать постоянный пользовательский значок на панели задач Windows?
  • 8 Solutions collect form web for “Список всех установленных программ на ПК”

    Запустите консоль и введите:

     wmic product get name,version 

    Требуется некоторое время, но вы получите полный список установленных программ. WMIC – консольная версия инструментария управления Windows, доступная из Windows 2000 и далее. Следуя инструкциям здесь и здесь , вы можете указать WMIC для вывода в формате XML, что может быть немного более удобным для вас. Однако при вызове wmic product get name вы получите список имен приложений, которые вы можете легко скопировать в текстовый редактор и преобразовать в формат электронных таблиц.

    Кроме того, введите:

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

    Это выведет TXT-файл со списком программ. Затем вы можете вставить это в электронную таблицу, если хотите.

    Источник: http://helpdeskgeek.com/how-to/generate-a-list-of-installed-programs-in-windows/


    Также вы можете использовать файл csv.xsl для форматирования вывода в список результатов CSV:

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

    Или файл htable.xsl для создания таблицы результатов HTML:

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

    Запустите wmic product get чтобы получить список установленного программного обеспечения, он должен быть точно таким же списком, как и программы добавления / удаления.

    Возможно, вы можете получить его для вывода в определенном формате, но я не пробовал.

    (Используйте wmic product get /? Чтобы увидеть параметры, включая форматирование вывода, я попытался включить его здесь, но форматирование было не совсем правильным.)

    Как уже упоминалось, вы можете получить эту информацию с помощью запроса WMI для объектов Win32_Product. PowerShell даже выгрузит его в CSV-файл, если вы захотите.

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

    Однако вы должны искать проблемы с Win32_Product . Это не все gumdrops и леденцы на палочке.

    WMIC не будет работать на сервере, если вы явно не установили средства Management and Monitoring Tools в меню « Add/Remove Windows Components .

    Другое решение – перейти в реестр и посмотреть все Uninstallable Programs , перейдя к:

     HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall 

    Вы должны будете щелкнуть каждый по отдельности, чтобы увидеть это значение, поэтому вместо этого вы можете щелкнуть правой кнопкой мыши папку « Uninstall » и выбрать « Экспорт» . Убедитесь, что в поле « Экспорт» задано значение «Только выбранная ветвь» :

    Избранная ветвь

    Затем вы можете открыть файл .reg в блокноте ++, но вы получите много дополнительной информации о каждом приложении:

    .reg

    Вы можете избавиться от всех строк, которые не начинаются с "DisplayName" путем сопоставления с следующим регулярным выражением :

     ^(?!"DisplayName").+ 

    Затем вы можете удалить любую строку "DisplayName" или " путем сопоставления в следующем регулярном выражении :

     ("DisplayName"="|") 

    Затем вы можете удалить любые дубликаты строк , сопоставив их в следующем регулярном выражении :

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

    Или вы можете просто сортировать строки по алфавиту, а затем удалять пустые

    Самый простой способ, который я нашел, – запустить чиппинг piriform.
    У этого есть кнопка в Инструменты -> Удалить -> "сохранить в текстовый файл"

    В Windows 7 вы можете использовать скрипт PowerShell:

    Откройте PowerShell, нажав кнопку « Start и введите « powershell в поле поиска.

    Затем введите следующую команду в окне PowerShell:

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

    Вы можете удалить любое из полей: DisplayName, DisplayVersion и т. Д., Если они вам не нужны.

    Если вы хотите сохранить вывод в файл, используйте перенаправление:

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

    Два других решения без командной строки, о которых ранее не упоминалось:

    1. MyUninstaller – бесплатная программа от NirSoft, которая, помимо удаления, также может экспортировать в HTML полный список всего установленного программного обеспечения, которое содержит много дополнительной информации. Преимущество портативного устройства. Хотя он не «встроен», вы можете запустить его с USB-накопителя. Вы можете найти его здесь .

    2. Belarc Advisor – бесплатная программа для личного использования, которая выполняет анализ безопасности и полную инвентаризацию аппаратного и программного обеспечения вашего компьютера. Он доступен здесь . К сожалению, вы должны установить его, чтобы он не полностью соответствовал потребностям OP, но может удовлетворять потребности других, у которых есть тот же вопрос и они могут быть установлены.

    Закодированная версия в c # установленных программах через реестр

     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(); } } } 
    Давайте будем гением компьютера.