Пакетное определение версии Adobe Reader на нескольких компьютерах

2

Я хочу отсканировать и создать список версий Adobe Reader, установленных на компьютерах на одном сайте в домене.

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

Есть два ключа реестра для обнаружения:

  1. HKEY_CURRENT_USER \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Adobe \ Acrobat Reader \ 10.0
  2. HKEY_CURRENT_USER \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Adobe \ Acrobat Reader \ 9.0

Я только новичок в сценариях Windows.

Стив
источник

Ответы:

2

Самый простой способ сделать это может быть с PowerShell. Узел HKLM не будет иметь все подключи, но если вы сделаете их там, он будет работать нормально.

Эта часть скрипта получает версию:

$SoftwareKey = "HKLM:\Software" 
if ((Get-WmiObject Win32_OperatingSystem).OSArchitecture -match "64-bit") { $SoftwareKey = "HKLM:\Software\WOW6432Node" } 

if (Test-Path "$SoftwareKey\adobe\Acrobat Reader") { 
$adobeversion = get-childitem "$SoftwareKey\adobe\Acrobat Reader" 
foreach ($version in $adobeversion) { 
Write-Output "Found verstion $($version.PSChildName) of Adobe Reader" 
} 
}

Это было частью большого скрипта, который автоматически принимает лицензионное соглашение при запуске после применения обновления, которое переводит читателя в новую версию. Весь скрипт ниже:

$SoftwareKey = "HKLM:\Software" 
if ((Get-WmiObject Win32_OperatingSystem).OSArchitecture -match "64-bit") { $SoftwareKey = "HKLM:\Software\WOW6432Node" } 

if (Test-Path "$SoftwareKey\adobe\Acrobat Reader") { 
$adobeversion = get-childitem "$SoftwareKey\adobe\Acrobat Reader" 
foreach ($version in $adobeversion) { 
if ((Test-Path "$($version.PSPath)\AdobeViewer") -eq $false) {New-Item "$($version.PSPath)\AdobeViewer"} 
New-ItemProperty -Path "$($version.PSPath)\AdobeViewer" -PropertyType DWORD -Value 1 -Name EULA -force 
} 
Bryansix
источник
0

Это можно сделать с помощью пакетного сценария, либо проверив ключ reg, либо найдя файл на диске и получив его версию filever.exe.

Но, честно говоря, я думаю, что самый простой способ - использовать программное обеспечение для аудита, WinAudit - бесплатное ПО, просто добавьте его в сценарий входа в систему клиентских компьютеров.

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

reg query "\\[hostname or IP]\HKLM\SOFTWARE\Adobe\Acrobat Reader"

Вам нужно будет проверить ключ HKLM, поскольку доступ к HKCU может получить только текущий пользователь аппарата.

Hydaral
источник
0

Shavlik - отличный инструмент для развертывания и информирования о состоянии программного обеспечения.

Он также имеет функции отчетности (которые я не использовал, когда использовал его), но которые должны быть вполне способны представить вам экспортируемый отчет о том, какие версии Adobe Reader имеются в вашей среде.

Согласно документации:
- Обзор отчетов
- Экспорт отчетов

Вам нужно будет перейти в Инструменты - Создать отчет. В разделе «Отчеты об активах» должен быть доступен отчет под названием «Каталог программ». Запустите это.

Затем экспортируйте отчет, выбрав «Файл» - «Экспорт», выберите соответствующий отчет и нажмите «Сохранить».

Не должно быть слишком сложно отфильтровать этот отчет в Excel для соответствующих и желаемых типов программного обеспечения, так как он должен содержать поля имени и версии программного обеспечения.

Шавлик достаточно точен в понимании программного обеспечения, и я не нашел его слишком склонным к ошибкам или ложной информации.

music2myear
источник