Как получить список установленных программ. Как получить список программ, установленных на компьютере. Как получить список установленных программ с помощью Windows PowerShell

Как получить список установленных программ в операционной системе Windows? Список установленных на компьютере программ можно получить несколькими способами.

В этой статье мы разберем три разных способа: с помощью командной строки, Windows PowerShell, и программы CCleaner. Список установленных программ будет сохранен на компьютере в текстовом файле.

Посмотреть список установленных программ можно непосредственно в операционной системе Windows. Также можно ознакомиться с данным списком установленных программ с помощью программ оптимизаторов или деинсталляторов (все установленные приложения вы увидите в окне программы).

Полный список установленных программ может понадобиться для следующих целей: для установки нужных программ, после установки (переустановки) операционной системы Windows, после покупки нового компьютера для того, чтобы не забыть установить все необходимые приложения, для выявления нежелательного программного обеспечения, которое проникло на компьютер без ведома пользователя.

Как посмотреть список установленных программ с помощью командной строки

Войдите в меню «Пуск», запустите командную строку от имени администратора, а затем ведите следующую команду:

В зависимости от того, что вы хотите: посмотреть в окне интерпретатора командной строки список установленных приложений, или сохранить список установленных программ на компьютер в виде текстового файла, выполните соответствующие команды.

Для просмотра списка программ, введите следующую команду:

Product get name,version

После ввода соответствующей команды, не забывайте нажать на клавишу «Enter». Подождите немного, потому что список установленных приложений сформируется не моментально. Вы увидите список установленных программ в виде таблицы.

Для сохранения списка программ на компьютере, введите команду:

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

В таблице отображается имя программы и номер версии приложения.

Обратите внимание, в этой команде выбрано сохранение текстового файла «appsfile» на диске «С». Вы можете выбрать другой диск на своем компьютере для сохранения файла в формате «TXT».

Как получить список установленных программ с помощью Windows PowerShell

В Windows 10, или в Windows 8, введите в поле поиска выражение «powershell» (без кавычек). Далее кликните правой кнопкой мыши по Windows PowerShell, а затем нажмите на пункт «Запустить от имени администратора».

В окне «Windows PowerShell» введите команду для отображения списка установленных программ:

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

Затем нажмите на клавишу «Enter».

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

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

Нажмите на клавиатуре на клавишу «Enter».

В этой команде выбрано сохранение файла «apps-list» в формате «TXT» на диске «С».

В таблице вы увидите: имя приложения и версию программы.

Для сохранения списка приложений полученных из магазина Windows, выполните в PowerShell следующую команду:

Get-AppxPackage | Select Name, PackageFullName | Format-Table -AutoSize > C:\store-apps-list.txt

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

В открывшемся окне выберите место для сохранения текстового файла. По умолчанию, сохраненный файл имеет имя «install».

В файле собраны следующие сведения о программах: имя программы, издатель, дата установки, размер, версия.

Заключение

При необходимости, пользователь может получить список программ, установленных на компьютере под управлением операционной системой Windows. Список установленных программ можно сохранить на компьютере в виде текстового файла при помощи командной строки, Windows PowerShell, программы CCleaner.

В этой инструкции мы покажем несколько способов получить список установленных программ в Windows 10, Windows 8 или Windows 7 с помощью командной строки. Эта методика построения списка программ в системе может пригодиться перед переустановкой системы, когда нужно найти нежелательное ПО или при выполнении инвентаризации установленного ПО на компьютерах организации.

Рассмотрим два способа: первый подразумевает использование командной строки и утилиты wmic, второй — PowerShell.

Вывод списка программ с помощью утилиты командной строки WMIC

Список установленных в системе программ может быть получен с помощью утилиты командной строки WMIC, через которую можно обратиться и опросить пространство имен WMI. Запустите командную строку с правами администратора и выполните команду:

wmic product get name,version

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

Этот список можно экспортировать в текстовый файл с помощью команды:

wmic product get name,version /format:csv > c:\Temp\Programs_%Computername%.csv

После окончания выполнения команды перейдите в каталог C:\Temp и найдите csv файл, имя которого начинается с Programs_[имя_ПК]. В данном файле в csv-формате помимо названия и версии ПО, также будет содержаться имя ПК (удобно для дальнейшего анализа).

Вывод списка программ через Windows PowerShell

Список установленных программ также может быть получен с помощью PowerShell. Идея метода в том, что список установленных программ, который мы видим в списке Programs and Features Панели Управления, строится на основе данных, хранящихся в ветке реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

Наша задача – вывести содержимое данной ветки реестра. Итак, запустите консоль Powershell и выполните команду:

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

Как вы видите, в результирующем списке содержится имя программы, версия, разработчик и дата установки.

Совет . Для 32-битных приложений на x64 версиях Windows, также нужно брать данные из ветки HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

Экспортировать полученный список в csv файл можно так:

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

Рассмотренный выше способ позволяет вывести данные только о классический Windows приложениях. Чтобы вывести список установленных Metro приложений, воспользуйтесь командой:

Get-AppxPackage | Select Name, PackageFullName |Format-Table -AutoSize > c:\temp\installed_metro_apps.txt

Чтобы получить список установленного ПО на удаленном компьютере (к примеру, с именем wks_name11), воспользуемся командлетом Invoke-command:

Invoke-command -computer wks_name11 {Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Select-Object DisplayName, DisplayVersion, Publisher, InstallDate | Format-Table -AutoSize }

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

Compare-Object –ReferenceObject (Get-Content C:\temp\installed-software.txt) –DifferenceObject (Get-Content C:\temp\installed-software2.txt)

В нашем примере в двух сравниваемых списках имеются различия в двух программах.

Другой способ вывести список установленных программ – воспользоваться командлетом Get-WmiObject, также позволяющего обращаться с пространству WMI:

Get-WmiObject -Class Win32_Product | Select-Object -Property Name

При работе с компьютером всегда накапливается много информации, которую обычный пользователь просто не видит. Опытный компьютерщик знает, что иногда для полноценной работы системы её необходимо чистить от «мусора». Простому человеку научиться этому было бы тоже не лишним. Для того чтобы найти какую-либо программу или удалить ненужное приложение, следует не только знать, как в Windows посмотреть список установленных программ, но и как правильно освободить свободное пространство.

Существует несколько способов того, как проверить список установленных программа Windows.

  • Чтобы установить/удалить приложение.
  • После переустановки/ установки операционной системы .
  • Чтобы дополнить недостающие софты.
  • Для выявления вредоносного ПО.

Основные способы

С помощью возможностей Windows 7, 8, 10, Vista и XP.


За счёт стороннего ПО

Ccleaner - популярный деинсталлятор, позволяющий экспортировать перечень драйверов на компьютер в виде txt-файла во всех ОС, включая 10 . Посмотреть его можно открыв Ccleaner, зайдя в раздел «Сервис» и выбрав пункт «Удаление программ». Если пока ничего не собираетесь делать, можно использовать кнопку «Сохранить отчёт», и указать место сохранения каталога.

ВАЖНО. При использовании этой утилиты сохраняются не только установленные софты, но и приложения из магазина Windows, доступные для удаления.

С помощью Windows Power Shell

Это стандартная возможность операционной системы для более глубокого анализа и управления компьютером. То есть это такая же командная строка с более широкими возможностями. В 8 и 10 операционной системе в поисковой строке ввести слово powershell. Правым нажатием мыши кликнуть по нему и выбрать пункт «Запустить от имени администратора». Но чтобы работать с этой функцией, следует вывести список всех доступных команд с помощью Get Command. С этой функцией лучше разбираться, обладая более серьёзными знаниями.

Любой выбранный способ получения реестра приложений, установленных на компьютере, будет вполне уместен в порядке возрастания трудоёмкости процесса. Воспользоваться им сможет обычный пользователь ПК, даже не имея особых навыков программирования.

Здравствуйте, уважаемые читатели! Некоторые из вас возможно задавались вопросом как удалить программу на удаленном компьютере . Рядовому пользователю это скорей всего не нужно, а системному администратору какой-нибудь локальной сети это может понадобиться.

Для удаления и установки ПО на удаленных компьютерах существует множество различных решений и программных средств. В этой статье мы рассмотрим решение данного вопроса на основе встроенных средств windows.

Удалять программы на удаленных машинах нам поможет Windows Management Instrumentation или проще говоря WMI . В переводе на русский это инструментарий управления Windows .

Как запустить wmi

Запуск wmi выполняется из командной строки. Открыть командную строку можно из "Пуск -> Все программы -> Стандартные -> Командная строка" , либо просто нажимаете клавиши "WIN + R" , откроется окно "Выполнить" в котором в поле "открыть" набираете "cmd" и нажимаете "OK" .

В открывшемся окне командной строки набираем команду wmic и нажимаем "Enter" :

Таким образом мы запустили консольную утилиту для взаимодействия со структурой WMI на локальном или удаленном компьютере. Теперь с помощью язык запросов WMI Query Language (WQL) можно выполнять различные команды WMI.

Для примера получим весь список установленного ПО на удаленном компьютере . Для этого выполняем следующий запрос:

/node:{имя компьютера} product get name

Где вместо {имя компьютера} подставляем имя удаленной и локальной машины, с которой необходимо получить список установленных программ. Имя компьютера лучше заключить в кавычки. Жмем "Enter" , ждем некоторое время на сбор информации и получаем примерно следующую картину:

Как удалить программу с помощью WMI?

Удалить программу можно с помощью следующего запроса:

/node:{имя компьютера} product where name={название программы} call uninstall

Где вместо {имя компьютера} вставляем имя компьютера с которого будет удаляться программа, а вместо {название программы} имя удаляемой программы как в полученном списке ПО.

Например, нам необходимо удалить «Microsoft Office Professional Plus 2010». Тогда запрос будет выглядеть примерно так:

/node:{home2} product where name="Microsoft Office Professional Plus 2010" call uninstall

Нажимаем «Enter» и на запрос предложения удаления программы отвечаем Y :

wmic:root\cli>/node:"tep-ws000010" product where name="Microsoft Office Professional Plus 2010" call uninstall
Execute (\\TEP-WS000010\ROOT\CIMV2:Win32_Product.IdentifyingNumber="{90140000-0011—0000-1000-0000000FF1CE}",Name="Microsoft Office Professional Plus 2010",Version="14.0.4763.1000") ->Uninstall () (Y/N/?)? Y

После попытки удаления будет выведено сообщение о результатах. В случае успешного удаления сообщение будет такого вида:

Method execution successful.
Out Parameters:
instance of __PARAMETERS
{
ReturnValue = 0;
};

На этом все! До встречи в следующих выпусках!

В работе администратора часто возникает необходимость проверить, установлена ли на некотором компьютере в сети определённая программа и какой версии. Например, можно проверить, установлено ли важное обновление или все ли рабочие станции имеют правильную версию Office.
Как это сделать с помощью или скриптов (на примере ), рассказывается далее.

Идея основана на том факте, что информация об установленных программах находится в системном реестре по адресу:
HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\

Указанная ветвь реестра перечисляет только программы, установленные «для всех пользователей», а программы «для этого пользователя» перечислены в ветви:
HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall

В Windows x64 список программ сохраняется также в папке реестра:
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

Соответственно, для получения полного списка потребуется просканировать информацию из всех трёх ветвей реестра.

Например, на VBScript:

Const HKLM = &H80000002 "HKEY_LOCAL_MACHINE strComputer = "computer" strKey = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" strEntry1a = "DisplayName" strEntry1b = "QuietDisplayName" strEntry2 = "InstallDate" strEntry3 = "VersionMajor" strEntry4 = "VersionMinor" strEntry5 = "EstimatedSize" Set objReg = GetObject("winmgmts://" & strComputer & _ "/root/default:StdRegProv") objReg.EnumKey HKLM, strKey, arrSubkeys WScript.Echo "Installed Applications (" & strComputer & ")" & VbCrLf For Each strSubkey In arrSubkeys intRet1 = objReg.GetStringValue(HKLM, strKey & strSubkey, _ strEntry1a, strValue1) If intRet1 <> 0 Then objReg.GetStringValue HKLM, strKey & strSubkey, _ strEntry1b, strValue1 End If If strValue1 <> "" Then WScript.Echo VbCrLf & "Display Name: " & strValue1 End If objReg.GetStringValue HKLM, strKey & strSubkey, _ strEntry2, strValue2 If strValue2 <> "" Then WScript.Echo "Install Date: " & strValue2 End If objReg.GetDWORDValue HKLM, strKey & strSubkey, _ strEntry3, intValue3 objReg.GetDWORDValue HKLM, strKey & strSubkey, _ strEntry4, intValue4 If intValue3 <> "" Then WScript.Echo "Version: " & intValue3 & "." & intValue4 End If objReg.GetDWORDValue HKLM, strKey & strSubkey, _ strEntry5, intValue5 If intValue5 <> "" Then WScript.Echo "Estimated Size: " & Round(intValue5/1024, 3) & " megabytes" End If Next

Скрипт подключается к компьютеру с сетевым именем strComputer, просматривает раздел реестра SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ и выводит информацию о программах.

Аналогичные действия можно выполнить в командном файле CMD. Этот командный файл выдаёт список программ:

@echo off rem Этот командный файл записывает список программ, установленных на rem удалённом компьютере. rem %1 Сетевое имя компьютера в формате PCNAME (пустое значение означает rem локальный компьютер). rem Определяем путь к папке реестра set reg_key=hklm\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall if not "%1" == "" set reg_key=\\%~1\%reg_key% rem Перебираем установленные программы for /F "tokens=1,2,*" %%a in ("reg query "%reg_key%" /s") do ^ if "%%a" == "DisplayName" echo %%c

Для проверки того, установлена ли конкретная программа (по названию) на каком-то одном компьютере, можно использовать следующий командный файл check-app-pc.cmd

@echo off rem Этот командный файл проверяет, установлена ли заданная программа на rem удалённом компьютере. rem %1 Полное название программы или часть названия, например, KB2570791. rem %2 Сетевое имя компьютера в формате PCNAME (пустое значение означает rem локальный компьютер). rem Возвращаемые коды: rem 0 Программа установлена. rem 2 Программа не найдена. rem 87 Ошибка в параметрах. set app_name=%1 set pc_name=%2 rem Проверяем наличие в списке call apps.cmd %2 | findstr /i "%~1" if errorlevel 1 echo "%~1" program not found && exit /b 2 echo "%~1" program installed. && exit /b 0

Соответственно, команда check-app-pc.cmd KB2570791 ws_alex проверит, установлено ли обновление KB2570791 на компьютере WS_ALEX.
Теперь можно автоматизировать работу этого командного файла, добавив проверку большего количества компьютеров по списку. Для этого создаём командный файл check-app-pclist.cmd с циклом, перебирающим строчки текстового файла с сетевыми именами компьютеров.

@echo off rem %1 Полное название программы или часть названия программы. rem %2 Имя файла со списком компьютеров. rem Примечание: этот командный файл использует check-app-pclist.cmd if "%~1" == "" exit /b 87 if not exist %2 exit /b 2 for /F %%a in (%2) do (echo %%a... call check-app-pc.cmd %1 %%a)

Пример списка файлов pc.list

SERVER_DB SERVER_FILES WS_ALEX WS_RECEPTION

Теперь с помощью команды check-app-pclist.cmd KB2570791 pc.list можно проверить, установлено ли обновление KB2570791 на каждом компьютере, перечисленном в файле pc.list.

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