Monday, May 25, 2009

Deploy Adobe Acrobat Updates

See an update on deploying patches to x64 machines
http://sms-hints-tricks.blogspot.com/2010/07/adobe-updates-on-x64.html

Every couple of months Adobe will release a patch for their products. If you're like us you might be running several versions of Adobe Acrobat (7,8,9) at the same time.

Depending on how you want to upgrade these software titles determines your approach. At one time we had a collection for each update. As the computer was patched it was inventoried and moved to the next collection. On some machines we might send down a batch file that would force all the patches back on in the hopes that the software knew what had been installed and would skip the older version. Here is the latest way we push down the patch. We have a single collection for Adobe 8,9 Patches. It looks for machines that have adobe 8 but are not at the latest patch level. Now you simply run this vbs script on the collection. The script determines the patch level and applies the appropriate patches.

------Adobe 8--------
Dim objShell, RegLocate
Set objShell = WScript.CreateObject("WScript.Shell")
On error resume next

Dim sngVersion

'''' Adobe 8.0.0
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.0.0" then
objShell.run "msiexec /p AcrobatUpd810_efgj_incr.msp /qb /norestart", 0, True

end if


'''' Adobe 8.1.0
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.0" then
objShell.run "msiexec /p AcrobatUpd811_all.msp /qb /norestart", 0, True

end if


'''' Adobe 8.1.1
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.1" then
objShell.run "msiexec /p 8.1.2 patch.msp /qb /norestart", 0, True

end if


'''' Adobe 8.1.2
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.2" then
objShell.run "msiexec /p AcrobatUpd813_all_incr.msp /qb /norestart", 0, True

end if


'''' Adobe 8.1.3 allows for jumps in patches
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.3" then
objShell.run "msiexec /p Adobe_Pro_8.1.6.msp /qb /norestart", 0, True

end if

'''' Adobe 8.1.4 allows for jumps in patches
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.4" then
objShell.run "msiexec /p Adobe_Pro_8.1.6.msp /qb /norestart", 0, True

end if


'''' Adobe 8.1.5 allows for jumps in patches
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.5" then
objShell.run "msiexec /p Adobe_Pro_8.1.6.msp /qb /norestart", 0, True

end if

'''' Adobe 8.1.7
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.6" then
objShell.run "msiexec /p AcrobatUpd817_all_incr.msp /qb /norestart", 0, True

end if

'''' Adobe 8.2
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000003}\DisplayVersion")
if sngVersion="8.1.7" then
objShell.run "msiexec /p AcrobatUpd820_all_incr.msp /qb /norestart", 0, True

end if
-------------------
Adobe Reader 8 updates collection
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceID = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "%Adobe Acrobat 8%" and SMS_G_System_ADD_REMOVE_PROGRAMS.Version != "8.2.0"






-------------------------------------------------


-----------Adobe Pro 9 updates--------------------------------------
Dim objShell, RegLocate
Set objShell = WScript.CreateObject("WScript.Shell")
On error resume next

Dim sngVersion

'''' Adobe 9.0.0
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000004}\DisplayVersion")
if sngVersion="9.0.0" then
objShell.run "msiexec /p AcroPro-std9.1.msp /qb /norestart", 0, True

end if


'''' Adobe 9.1.0
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000004}\DisplayVersion")
if sngVersion="9.1.0" then
objShell.run "msiexec /p Adobe_9.1.2_pro.msp /qb /norestart", 0, True

end if


'''' Adobe 9.1.1
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000004}\DisplayVersion")
if sngVersion="9.1.1" then
objShell.run "msiexec /p Adobe_9.1.2_pro.msp /qb /norestart", 0, True

end if

'''' Adobe 9.1.3
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000004}\DisplayVersion")
if sngVersion="9.1.2" then
objShell.run "msiexec /p AcrobatUpd913_all_incr.msp /qb /norestart", 0, True

end if

'''' Adobe 9.2
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000004}\DisplayVersion")
if sngVersion="9.1.3" then
objShell.run "msiexec /p AcrobatUpd920_all_incr.msp /qb /norestart", 0, True

end if

'''' Adobe 9.2
sngVersion = objShell.RegRead ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-1033-0000-7760-000000000004}\DisplayVersion")
if sngVersion="9.2.0" then
objShell.run "msiexec /p AcrobatUpd930_all_incr.msp /qb /norestart", 0, True

end if


WScript.Quit
----------------------------------------------------



Adobe Reader 9 collection
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceID = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "Adobe Reader 9%" and SMS_G_System_ADD_REMOVE_PROGRAMS.Version != "9.2.0"