Silent install that also disables updates:
I found that the msi's simply extract an exe, and then use that exe to install. Instead of doing the config file after the installation, you can use the exe extracted from the downloaded msi's with the following switch:
[installfilename].exe -install -au 2
au 0=always install updates; au 1=notify me; au 2=never update.
I wish I could remember where I found the -au part of the switch, but I can't seem to find reference to it again. Also, using the ISCHECKFORUPDATES property in the msi didn't seem to do anything, when I used it. I think, because it two-steps the process by extracting the exe, then running the exe to install it.
First i uninstall the old version with the uninstall_flash_player_32bit.exe and the -uninstall switch. Than install the new version with "msiexec /i "installfile" /quiet /passive /norestart /l* "logfile". The "installfile" is the install_flash_player_11_active_x_32bit.msi. After that i copy the cfg-file to "C:\Windows\System32\Macromed\Flash". The cfg file is a sipmple txt-file with the to parameters "AutoUpdateInterval=0" and "AutoUpdateDisable=1" what disable the automatic update.
Here's how I deployed Flash Player through SCCM 2012 with the MSI package and disabled auto-updating during the install.
new version installation activate Adobe Flash Player Update Service, which run every hour even if you disable updates. It won't do anything, but still it run every hour. One way to remove this updater is to run the following, it will delete service and scheduler task:
sc delete "AdobeFlashPlayerUpdateSvc"
schtasks /delete /tn "adobe flash player updater" /f
You can use my installation script if you like. It uninstalls all previous versions of flash first and then installs the current version. It also knows the relative path it is running from so it can be run from any location.
http://mickitblog.blogspot.com/2012/05/adobe-flash-installation-script.html
download the msi's from adobe and use them to do a silent install using /qn /i switches
http://www.adobe.com/products/flashplayer/distribution3.html
Required Pskill.exe from Sysinternals
'<<<<< Created By Junuzzz >>>>>>>>>>>>
Option Explicit
'On Error Resume next
Dim strComputer, objWMIService, colOperatingSystems, objOperatingSystem, strCaption, strVersion, strCurrent
dim Px32Macromed, Px64Macromed, Px32Flash, Px64Flash, log, Install,x64, x32, ConigFolder
dim objShell, filesys, inststat, iErrorLevel
Const SHOW_ACTIVE_APP = 1
inststat = 1
strCurrent = "11,4,402,287"
Set objShell = WScript.CreateObject ("WScript.shell")
Set filesys=CreateObject("Scripting.FileSystemObject") 'Checking Installed version of Flash
On Error Resume Next
strVersion = objShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPlayer\CurrentVersion")
If strVersion=strCurrent Then
inststat = 0
'Msgbox ("Already" & strVersion)
wscript.quit(inststat)
Else
'For Pulling WMI info
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem") 'PSKILL PreSetup
'Accept Eula for pskill
objShell.run "reg add HKEY_CURRENT_USER\Software\Sysinternals\PsKill /v EulaAccepted /t REG_DWORD /d 00000001 /f"
' Copy pskill To C:\WINDOWS Folder Of Workstation
filesys.CopyFile filesys.GetAbsolutePathName(".") & "\pskill.exe", filesys.GetSpecialFolder(0) & "\", true
'Expanding Folder Path
Px32Macromed=objShell.ExpandEnvironmentStrings("%WINDIR%\System32\Macromed\")
Px32Flash=objShell.ExpandEnvironmentStrings("%WINDIR%\System32\Macromed\Flash\")
Px64Macromed=objShell.ExpandEnvironmentStrings("%WINDIR%\SysWOW64\Macromed\")
Px64Flash=objShell.ExpandEnvironmentStrings("%WINDIR%\SysWOW64\Macromed\Flash\")
x64=objShell.ExpandEnvironmentStrings("%WINDIR%\SysWOW64\Macromed\Flash\mms.cfg")
x32=objShell.ExpandEnvironmentStrings("%WINDIR%\System32\Macromed\Flash\mms.cfg")
log=objShell.ExpandEnvironmentStrings("%temp%\flash.log")
Install= "msiexec /i Install.msi /quiet /norestart /log" &" " & log 'Check Operating system >>>check Folder Path >>>Create folder if not exists >>>Copy config files
For Each objOperatingSystem in colOperatingSystems
strCaption = LCase(objOperatingSystem.OSArchitecture)
If (InStr(strCaption, "64") > 0) Then
'Call MsgBox("64-bit Operating System")
If Not filesys.FolderExists(Px64Macromed) Then
Set ConigFolder = filesys.CreateFolder(Px64Macromed)
Set ConigFolder = filesys.CreateFolder(Px64Flash)
'MsgBox ("x64 Folder Created")
'Else
'MsgBox ("x64 Folder Already there")
End If
filesys.copyfile filesys.GetAbsolutePathName(".") &"\"& "64mms.cfg" , x64, True
Else
'Call MsgBox("32-bit Operating System")
If Not filesys.FolderExists(Px32Macromed) Then
Set ConigFolder = filesys.CreateFolder(Px32Macromed)
Set ConigFolder = filesys.CreateFolder(Px32Flash)
'MsgBox ("x32 Folder Created")
'Else
'MsgBox ("x32 Folder Already there")
End If
filesys.copyfile filesys.GetAbsolutePathName(".") &"\"& "32mms.cfg" , x32, True
End if
Next
'Start Flash Install
'Kill Internet Browsers
MsgBox("Please save your Work and close Internet Browser to update Adobe Flash Player"& VbCrLf & "WARNING : Clicking OK Will Close All Opened Internet Browser Windows")
iErrorLevel = objShell.Run("pskill iexplore.exe", 1, True)
iErrorLevel = objShell.Run("pskill firefox.exe", 1, True)
iErrorLevel = objShell.Run("pskill chrome.exe", 1, True)
objShell.Run Install, SHOW_ACTIVE_APP, True ' The script will continue until Install finish
inststat = 0
Msgbox ("Flash player 11 Update completed")
wscript.quit(inststat)
End If
I wrote this script to check the version of Adobe Flash you are using, if it's out of date, then update your version of Flash based on if you are using 32 bit or 64 bit version of Windows 7 and Vista (Haven't tested on XP). Also, silent installs. I modified the MSI files using Orca to disable auto updates and anything else it would prompt for. It also logs the install process in case anything goes wrong. I'm sure you could add some lines to clean up the registry and also uninstall an older version before installing over the top, but this works just fine for my current needs.
@ECHO off
:: Must change the first 3 variables when updating Adobe Flash version...
SET AdobeInstaller=install_flash_player_11_active_x_32bit.msi
SET AdobeInstallerx64=install_flash_player_11_active_x_64bit.msi
SET VersionCheck=11.2.202.235
:: Must change the first 3 variables when updating Adobe Flash version...
SET LOGDIR=C:\Software
SET AdobeLogFile=%LOGDIR%\AdobeUpdate11_2.txt
SET MSILOGFILE=%1
IF NOT EXIST %LOGDIR% MKDIR %LOGDIR%
:32BitCheck
:: Checks to see if the 32 bit Reg Key exist.
SET RegKey=HKLM\SOFTWARE\Macromedia\FlashPlayerActiveX
REG QUERY %RegKey% >NUL && GOTO :RegistryCheck
:64BitCheck
SET RegKey=HKLM\SOFTWARE\Wow6432Node\Macromedia\FlashPlayerActiveX
REG QUERY %RegKey% >NUL && GOTO :RegistryCheck
GOTO :InstallAdobeFRESH
:RegistryCheck
SET "AdobeVersion=" & setlocal & Set "$V="
:: Look in the Uninstall area of registry, where the installed version of Flash player is listed.
SET "RegItem=Version"
:: Take the output of a REG QUERY to the location above, and put it into the AdobeVersion variable / compairing VersionCheck.
For /f "tokens=3*" %%! in (
'2^>nul Reg.exe QUERY "%RegKey%" /v "%RegItem%" ^|(
Findstr.exe /ri "\<%RegItem%\>"^)') Do Set "$V=%%!"
endlocal & call Set "AdobeVersion=%$V%"
GOTO :InstallAdobe
:InstallAdobe
:: Checks to see if current version of Adobe Flash is installed.
IF {%AdobeVersion%} EQU {%VersionCheck%} GOTO :INSTALLED
GOTO :CPUCheck
:CPUCheck
:: Checks for 32 or 64 bit architecture.
ECHO Begining Adobe Flash %VersionCheck% install / update process > %adobelogfile%
ECHO Checking for Processor Type >> %adobelogfile%
IF {%PROCESSOR_ARCHITECTURE%} NEQ {x86} GOTO :x64Install
IF {%PROCESSOR_ARCHITEW6432%} EQU {AMD64} GOTO :x64Install
:X86Install
:: Installs 32 bit Adobe Flash.
ECHO x86 type found. >> %adobelogfile%
ECHO Installing Adobe Flash %VersionCheck% 32 Bit. >> %adobelogfile%
start /wait msiexec.exe /qn /i %AdobeInstaller% /lv* "%MSILOGFILE%"
ECHO Adobe Flash %VersionCheck% 32 Bit has been sucessfully installed. >> %adobelogfile%
GOTO :END
:X64Install
:: Installs 64 bit Adobe Flash.
ECHO x64 type found. >> %adobelogfile%
ECHO Installing Adobe Flash %VersionCheck% 64 Bit. >> %adobelogfile%
start /wait msiexec.exe /qn /i %AdobeInstallerx64% /lv* "%MSILOGFILE%"
ECHO Adobe Flash %VersionCheck% 64 Bit has been sucessfully installed. >> %adobelogfile%
GOTO :END
:INSTALLED
ECHO Adobe Flash %VersionCheck% is already installed. >> %adobelogfile%
GOTO :END
:END
ECHO End of installation process. >> %adobelogfile%
View inventory records anonymously contributed by opt-in users of the K1000 Systems Management Appliance.