Ищете скрипт / инструмент для вывода списка установленных функций и программ на Windows Server 2008 R2 - PullRequest
0 голосов
/ 15 марта 2010

Одна и та же скомпилированная программа .Net / C ++ / Com делает разные вещи на двух, казалось бы, одинаковых компьютерах.На обоих установлены десятки вещей.Я хотел бы выяснить, в чем разница между ними, посмотрев на разность ASCII.Перед этим мне нужно «сериализовать» список установленных вещей в простом читаемом формате - отсортированном по алфавиту + один элемент в строке.

Сценарий Python был бы идеальным, но у меня также есть Perl, PowerShell установлен.

Спасибо.

Ответы [ 4 ]

1 голос
/ 10 июля 2012

Взято из Список установленного программного обеспечения из командной строки :

Если вы хотите перечислить программное обеспечение, известное Windows Management Инструментарий (WMI) из командной строки, используйте командную строку WMI (WMIC) интерфейс.

Чтобы просмотреть список всех продуктов, установленных локально, выполните следующее Команда:

wmic product

Предупреждение : Похоже, что эта команда отображает только список программ, установленных через установщик Windows. См Класс Win32_Product

1 голос
/ 24 марта 2010

Существует два инструмента от Microsoft, которые могут вам понадобиться: RegDump и RegDiff . Вы можете загрузить их из различных мест , в том числе как часть набора инструментов для тестирования логотипов Microsoft Vista.

Также есть статья поддержки Microsoft Как использовать WinDiff для сравнения файлов реестра .

Для Pythonic здесь - это рецепт ActiveState для получения отформатированного вывода всех подразделов для определенного ключа ( HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall для пример).

1 голос
/ 25 марта 2010

Лично мне всегда нравились вещи sysinternals (мощные, легкие, актуальные инструменты - не нужно устанавливать)

Существует инструмент командной строки psinfo , который может получить то, что вы хотите (а затем и некоторые) в различных форматах, различая исправления и установленное программное обеспечение, на локальном или удаленном компьютере (при условии, что системные политики позволяют это удаленно ).

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

1 голос
/ 20 марта 2010

Вы можете получить список установленных программ из реестра. Это под HKEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ Windows \ CurrentVersion \ Uninstall

Если это разовое упражнение, вам может даже не понадобиться писать какой-либо код - просто используйте Regedit для экспорта ключа в файл .REG. Если вы хотите автоматизировать его, Python предоставляет модуль _ winreg для доступа к реестру.

...