A maneira mais fácil de fazer isso pode ser com o PowerShell. O nó HKLM não terá todas as subchaves, mas se você as fizer, funcionará bem.
Esta parte do script agarra a versão:
$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"
}
}
Isso fazia parte de um script maior que aceita automaticamente o EULA quando executado após a aplicação de uma atualização que leva o leitor a uma nova versão. O script inteiro está abaixo:
$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
}