2

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

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

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

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

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

3 ответа3

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 
} 
0

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

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

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

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

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

0

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

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

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

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

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .