Difference between revisions of "Flash Player"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(Some general updates)
m (Adobe Flash Player 32)
 
(200 intermediate revisions by 82 users not shown)
Line 1: Line 1:
== Adobe Flash Player 10 for Internet Explorer with Win64bit check==
+
This is a silent installer for Adobe Flash Player.
 +
To use these installers on your network, you will need to [http://www.adobe.com/products/players/fpsh_distribution1.html get a licence] but this is a simple free process.
 +
 
 +
==Documentation for all versions==
 +
 
 +
Adobe Flash Platform Runtime Releases - Announcements and release notes for Adobe AIR and Adobe Flash Player: http://blogs.adobe.com/flashruntimereleases/
 +
(Last update 2011!?)
 +
 
 +
Security bulletins and advisories: http://www.adobe.com/support/security/#flashplayer
 +
 
 +
==Download Flash Player==
 +
 
 +
Uninstaller: http://helpx.adobe.com/flash-player/kb/uninstall-flash-player-windows.html
 +
 
 +
Installer: https://www.adobe.com/products/flashplayer/distribution5.html
 +
 
 +
==Windows 8 & 8.1==
 +
 
 +
Windows 8 & 8.1 includes Flash for IE and the activex plugin will fail with an error of 1031.  To use the one combined package, note the OS checks that exclude Windows 8 from the activex installer
 +
 
 +
==Adobe Flash Player 32==
 +
A lot of useful information can be found in the Adobe Flash Player 16 section.
  
 
<source lang="xml">
 
<source lang="xml">
 
<package  
 
<package  
    id="flashplayer_ie"
+
id="adobeflashplayernpapi"
    name="Adobe Flash Player 10 for IE"
+
name="Adobe Flash Player NPAPI"
    revision="4"
+
revision="%PKG_VERSION%"
    reboot="false"
+
reboot="false"
    priority="10">
+
priority="0">
       
+
 
    <check type="logical" condition="or">
+
<depends package-id="firefox" />
        <check type="logical" condition="and">
+
 
            <check type="uninstall" condition="exists" path="Adobe Flash Player 10 ActiveX" />
+
<variable name="PKG_VERSION"   value="32.0.0.363" />
            <check type="file" condition="versiongreaterorequal" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash10b.ocx" value="10.0.22.87"/>
+
<variable name="PKG_SOURCE" value="%SOFTWARE%\Adobe\FlashPlayer" />
        </check>
+
<variable name="PKG_NAME" value="install_flash_player.exe" />
        <check type="logical" condition="and">
+
<variable name="PKG_REMOVE_NAME" value="uninstall_flash_player.exe" />
            <check type="uninstall" condition="exists" path="Adobe Flash Player 10 ActiveX" />
+
<variable name="PKG_FILE_PLUGIN" value="NPSWF32_32_0_0_363.dll" />
            <check type="file" condition="versiongreaterorequal" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash10b.ocx" value="10.0.22.87"/>
+
<variable name="PKG_INSTALL_SWITCH" value="-install" />
         </check>
+
<variable name="PKG_REMOVE_SWITCH" value="-uninstall" />
    </check>
+
<variable name="PKG_DESTINATION" value="%SystemRoot%\System32\Macromed\Flash" architecture="x86"/>
 +
<variable name="PKG_DESTINATION" value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
 +
 
 +
 
 +
<check type="logical" condition="and">
 +
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ NPAPI" value="%PKG_VERSION%" />
 +
<check type="file"     condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%" value="%PKG_VERSION%" />
 +
</check>
 +
 
 +
<install cmd='"%PKG_SOURCE%\%PKG_REMOVE_NAME%" %PKG_REMOVE_SWITCH%' >
 +
<exit code="any" />
 +
</install>
 +
<install cmd='"%PKG_SOURCE%\%PKG_NAME%" %PKG_INSTALL_SWITCH%' />
 +
<install cmd='%COMSPEC% /C copy /Y /V "%PKG_SOURCE%\mms.cfg" "%PKG_DESTINATION%"' >
 +
<exit code="any"/>
 +
</install>
 +
 
 +
         <upgrade include="install" />
 +
 
 +
<remove cmd='"%PKG_SOURCE%\%PKG_REMOVE_NAME%" %PKG_REMOVE_SWITCH%' />
  
    <install cmd='%SOFTWARE%\flash\install_flash_player_10_ax.exe /S' />
 
       
 
    <upgrade cmd='%SOFTWARE%\flash\install_flash_player_10_ax.exe /S' />
 
   
 
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" /S'/>
 
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_activeX.exe" /S'/>
 
 
</package>
 
</package>
 
</source>
 
</source>
  
== Adobe Flash Player 10 for Firefox/Opera with Win64bit check==
+
==Adobe Flash Player 16==
 +
 
 +
Package written to keep in-line with previously documented working solutions which should give you the ability to just download the latest and update version number to make the jump to future versions.
 +
 
 +
The files you download from Adobe are not named the way this package requires. You must rename the NPAPI plugin from <code>install_flash_player.exe</code> to <code>install_flash_player_%MAJORVERSION%_npapi.exe</code> and the ActiveX plugin from <code>install_flash_player_ax.exe</code> to <code>install_flash_player_%MAJORVERSION%_active_x.exe</code>, e.g. <code>install_flash_player_16.0.0.235_npapi.exe</code> and <code>install_flash_player_16.0.0.235_active_x.exe</code>.
 +
 
 +
The uninstall check for the NPAPI plugin changed slightly for version 16, but it's otherwise the same as 15.
 +
 
 +
 
 +
==== Package for WPKG 1.2.1 or higher ====
 +
 
 +
Version 14.0.0.176 of the Flash Player was only released for NPAPI and version 14.0.0.179 was only released for ActiveX, so this package supports checking  different versions of each plugin. As of 16.0.0.235 no further mismatched-version releases have been made.
  
 
<source lang="xml">
 
<source lang="xml">
<package  
+
 
    id="flashplayer_mozilla"
+
<package id="AdobeFlashPlayer"  
    name="Adobe Flash Player 10 for Mozilla/Opera"
+
        name="AdobeFlashPlayer"  
    revision="4"
+
        revision="%PKG_VERSION%"  
    reboot="false"
+
        reboot="false"  
    priority="10">
+
        priority="10">
       
+
 
    <check type="logical" condition="or">
+
         <check type="logical" condition="and">
+
<variable name="PKG_NAME"             value="ADOBE-FLASHPLAYER" />
            <check type="uninstall" condition="exists" path="Adobe Flash Player 10 Plugin" />
+
 
            <check type="file" condition="versiongreaterorequal" path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="10.0.22.87" />
+
<variable name="PKG_VERSION"          value="16.0.0.235" />
        </check>
+
        <check type="logical" condition="and">
+
<variable name="NPAPI_VERSION"          value="16.0.0.235" />
            <check type="uninstall" condition="exists" path="Adobe Flash Player 10 Plugin" />
+
<variable name="ACTIVEX_VERSION"          value="16.0.0.235" />
            <check type="file" condition="versiongreaterorequal" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="10.0.22.87" />
+
        </check>
+
<variable name="NPAPI_shortversion"         value="16_0_0_235" />
    </check>
+
<variable name="ACTIVEX_shortversion"         value="16_0_0_235" />
       
+
 
    <install cmd='%SOFTWARE%\flash\install_flash_player_10.exe /S' />
+
<variable name="PKG_SOURCE"           value="%SWSOURCE%\AdobeFlashPlayer\V14\ALL" /><!-- set this to your environment, %SWSOURCE% my be \\servername\path -->
   
+
    <upgrade cmd='%SOFTWARE%\flash\install_flash_player_10.exe /S' />
+
<variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
       
+
<variable name="PKG_DESTINATION"     value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_plugin.exe" /S'/>
+
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_plugin.exe" /S'/>
+
<variable name="PKG_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
</package>
+
 +
<variable name="PKG_FILE_ACTIVEX"    value="Flash32_%ACTIVEX_shortversion%.ocx" />
 +
<variable name="PKG_FILE_NPAPI"      value="NPSWF32_%NPAPI_shortversion%.dll" />
 +
 +
<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%ACTIVEX_shortversion%.ocx" />
 +
<variable name="PKG_FILE_NPAPI_X64"  value="NPSWF64_%NPAPI_shortversion%.dll" />
 +
 +
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"              value="%ACTIVEX_VERSION%" />
 +
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ NPAPI.*"                value="%NPAPI_VERSION%" />
 +
 +
<check type="file"     condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%" value="%ACTIVEX_VERSION%" os="(5\.[1-9]|6\.[01])\.\d{4}" />
 +
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_NPAPI%" value="%NPAPI_VERSION%" />
 +
 
 +
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%ACTIVEX_VERSION%" architecture="x64" />
 +
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_NPAPI_X64%" value="%NPAPI_VERSION%" architecture="x64" />
 +
 +
<commands>
 +
<command type="install" include="remove" />
 +
 +
<command type="downgrade" include="install" />
 +
 +
<command type="upgrade" include="install" />
 +
 
 +
<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%PKG_VERSION%_active_x.exe" /install ' os="(5\.[1-9]|6\.[01])\.\d{4}" />
 +
<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%PKG_VERSION%_npapi.exe" /install ' />
 +
 +
<command type="remove" cmd="taskkill /F /IM Firefox.exe">
 +
<exit code="0" />
 +
<exit code="128" />
 +
<exit code="1" />
 +
</command>
 +
<command type="remove" cmd="taskkill /F /IM iexplore.exe">
 +
<exit code="0" />
 +
<exit code="128" />
 +
<exit code="1" />
 +
</command>
 +
<command type="remove" cmd='"%PKG_SOURCE%\uninstall_flash_player.exe" -uninstall'>
 +
<exit code="any" />
 +
</command>
 +
</commands>
 +
    </package>
 
</source>
 
</source>
  
== Disable Automatic Update dialog in Adobe Flash Player 10 (and 9) ==
+
== Using Microsoft EMET ==
  
It seems that Flash checks in to the mother ship Adobe at regular bases to check if there is an update available. And if so, it presents the user with a dialog asking if he wants to upgrade Flash to the latest version, which is what we don't want when the software is managed by WPKG.
+
If you use [[Microsoft EMET]] http://www.microsoft.com/en-us/download/details.aspx?id=29851 as additional layer of protection, '''you need to protect Internet Explorer and Firefox in order to protect the Flash plugin. It is neither necessary nor sufficient to add EMET rules to protect executables in %systemroot%\system32\macromed\Flash because [http://www.rationallyparanoid.com/articles/microsoft-emet-2.html the only executables in that directory are uninstallers].''' The Flash plugin runs as part of the Firefox plugin-container or the Internet Explorer process.
To prevent this from happening, you can do the following:
+
  
* create a file named "mms.cfg" (if you don't already have it for other flash settings)
+
If you want to protect those files anyway, it's bit of a hassle to add new player versions to EMET configuration because EMET does not accept wildcards in executable filenames. Automate the process with this script:
* add an entry in this file: AutoUpdateDisable=1
+
<source lang="dos">
* this file now has to be added to the FlashPlayer installation directory during the install of the package. You can do this by just plain copying the file into that directory. Add the next lines to your Flash package:
+
rem %PKG_SOURCE%\emet.cmd
Right after the installation:
+
 
<source lang="xml">
+
if exist "%programfiles%\EMET\emet_conf.exe" (
<install cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\FlashPlayer\mms.cfg" %WINDIR%\system32\Macromed\Flash\' />
+
@FOR /F %%G IN ('"dir /b %systemroot%\system32\macromed\Flash\*.exe 2> nul"') DO "%programfiles%\emet\emet_conf.exe" --set \windows\system32\macromed\Flash\%%G 2> nul
 +
@FOR /F %%G IN ('"dir /b %systemroot%\SysWOW64\macromed\Flash\*.exe 2> nul"') DO "%programfiles%\emet\emet_conf.exe" --set \windows\SysWOW64\Macromed\Flash\"%%G 2> nul
 +
)
 
</source>
 
</source>
Right after the upgrade:
+
and append line
 
<source lang="xml">
 
<source lang="xml">
<upgrade cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\FlashPlayer\mms.cfg" %WINDIR%\system32\Macromed\Flash\' />
+
<install cmd='cmd /c "%PKG_SOURCE%\emet.cmd" &gt;nul ' />
</source>
+
Right before the uninstall:
+
<source lang="xml">
+
<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\system32\Macromed\Flash\mms.cfg"' />
+
 
</source>
 
</source>
 +
to your flash install script.
  
Or you could create a separate package for this setting.
+
== Disable Automatic Update dialog in Adobe Flash Player ==
  
Note: This probably also works for older versions of Flash (<9), but I believe the mms.cfg file then has to be copied to the Windows\system32 directory?
+
===When Using MSI and EXE Installers===
  
== Adobe Flash Player 9.0.124.0 for Firefox ==
+
Flash Player automatically checks with adobe.com to see if an updated version is available and if there is it presents a dialog prompting the user to upgrade. To disable this update check and prompting you can do the following:
  
You are encouraged to upgrade for security reasons: http://www.adobe.com/support/security/bulletins/apsb08-11.html and then to apply the security settings for "Clickjacking" vulnerability (APSA08-08) defined below.
+
* if it doesn't already exist, create a directory %WINDIR%\system32\Macromed\Flash\ (%WINDIR%\SysWOW64\Macromed\Flash for 64-bit system)
 +
* if it doesn't already exist, create a file there called "[http://kb2.adobe.com/cps/167/16701594.html mms.cfg]" (this file can also be used to deploy other settings)
 +
* add an entry in this file: AutoUpdateDisable=1
  
Installer packaged as an executable, installs as a plugin. Sometimes it is upgraded only on the second run of wpkg, it must be a timing issue between installing over previous version and checking conditions.
+
This configuration can be performed by WPKG using the following:
  
 
<source lang="xml">
 
<source lang="xml">
<package id="flashplayerfirefox" name="Adobe Flash Player for Firefox" revision="1" reboot="false" priority="0">
+
<install cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\system32\Macromed\Flash\' >
  <depends package-id="firefox"/>
+
<exit code="any"/>
  <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.124.0"/>
+
  <install cmd='%SOFTWARE%\Flash\install_flash_player.exe /S' />
+
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player.exe /S' />
+
  <remove cmd='%WINDIR%\system32\Macromed\Flash\uninstall_plugin.exe /S'/>
+
</package>
+
</source>
+
 
+
It's good to kill Firefox application process before installing, since the installer won't work with browser running. To do this add to code:
+
<source lang="xml">
+
<install cmd="taskkill /F /IM Firefox.exe">
+
            <exit code="0" />
+
            <exit code="128" />
+
 
</install>
 
</install>
</source>
+
<install cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\SysWOW64\Macromed\Flash\' >
And of course:
+
<exit code="any"/>
<source lang="xml">
+
</install>
<upgrade cmd="taskkill /F /IM Firefox.exe">
+
 
            <exit code="0" />
+
<upgrade cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\system32\Macromed\Flash\' >
            <exit code="128" />
+
<exit code="any"/>
 
</upgrade>
 
</upgrade>
 +
<upgrade cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\SysWOW64\Macromed\Flash\' >
 +
<exit code="any"/>
 +
</upgrade>
 +
 +
<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\system32\Macromed\Flash\mms.cfg"' >
 +
  <exit code="0" />
 +
  <exit code="1" />  <!-- if file does not exist -->
 +
</remove>
 +
<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\SysWOW64\Macromed\Flash\mms.cfg"' >
 +
  <exit code="0" />
 +
  <exit code="1" />  <!-- if file does not exist -->
 +
</remove>
 
</source>
 
</source>
  
 +
Either you can deploy this using WPKG as part of the Flash Player installer (Section 1.1 or 1.2), or create a separate package for this setting which would allow you to deploy updates to this file separately to the Flash Player itself.
  
 +
This file will prevent current and older versions of Flash from auto-updating.
  
== Adobe Flash Player 9.0.124.0 for Internet Explorer ==
+
===When using EXE Installers===
 +
You can use the "-au 2" installation option to disable automatic updates when using the EXE-based installer, but not the MSI-based installer. mms.cfg will be created for you in the normal location.
  
You are encouraged to upgrade for security reasons: http://www.adobe.com/support/security/bulletins/apsb08-11.html and then to apply the security settings for "Clickjacking" vulnerability (APSA08-08) defined below.
+
== Older Versions ==
  
Installer packaged as .msi, installs as an ActiveX. You can download it from http://fpdownload.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_active_x.msi - make sure you comply with the license: http://www.adobe.com/licensing/distribution/.
+
===Adobe Flash Player 11.2 through 15===
  
The line "Adobe Flash Player 9 ActiveX" in Control Panel's Add/Remove Programs doesn't show any minor version, so both this line and the detailed ocx's file version have to be checked with a logical and condition.
+
Package written to keep in-line with previously documented working solutions which should give you the ability to just download the latest and update version number to make the jump to future versions.
 +
 
 +
The files you download from Adobe are not named the way this package requires. You must rename the NPAPI plugin from <code>install_flash_player.exe</code> to <code>install_flash_player_%MAJORVERSION%_plugin.exe</code> and the ActiveX plugin from <code>install_flash_player_ax.exe</code> to <code>install_flash_player_%MAJORVERSION%_active_x.exe</code>, e.g. <code>install_flash_player_16.0.0.235_plugin.exe</code> and <code>install_flash_player_16.0.0.235_active_x.exe</code>.
 +
 
 +
Flash Player 12 onwards features "Universal 32-bit and 64-bit installers for Mac and Windows browsers".
 +
 
 +
==== Package for WPKG 1.2.1 or higher ====
 +
 
 +
Version 14.0.0.176 of the Flash Player was only released for NPAPI and version 14.0.0.179 was only released for ActiveX, so this package supports checking  different versions of each plugin. As of 16.0.0.235 no further mismatched-version releases have been made.
  
 
<source lang="xml">
 
<source lang="xml">
<package id="flashplayerie" name="Adobe Flash Player for Internet Explorer" revision="1" reboot="false" priority="0">
 
  <check type="logical" condition="and">
 
    <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9f.ocx" value="9.0.124.0"/>
 
    <check type="uninstall" condition="exists" path="Adobe Flash Player 9 ActiveX"/>
 
  </check>
 
  <install cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
 
    <exit code="3010" reboot="true" />
 
  </install>
 
  <upgrade cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
 
    <exit code="3010" reboot="true" />
 
  </upgrade>
 
  <remove cmd='MsiExec.exe /qn /X{58BAA8D0-404E-4585-9FD3-ED1BB72AC2EE}'/>
 
</package>
 
</source>
 
  
 +
<package id="AdobeFlashPlayer"
 +
        name="AdobeFlashPlayer"
 +
        revision="%PKG_VERSION%"
 +
        reboot="false"
 +
        priority="10">
  
== Adobe Flash Player security settings for "Clickjacking" vulnerability (APSA08-08) ==
+
 +
<variable name="PKG_NAME"             value="ADOBE-FLASHPLAYER" />
  
Waiting for the next version of Flash Player to be available, you are strongly encouraged to apply the following settings for security reasons: http://www.adobe.com/support/security/advisories/apsa08-08.html.
+
<variable name="PKG_VERSION"          value="14.0.0.179" />
 +
 +
<variable name="PLUGIN_VERSION"          value="14.0.0.179" />
 +
<variable name="ACTIVEX_VERSION"          value="14.0.0.176" />
 +
 +
<variable name="PLUGIN_shortversion"        value="14_0_0_179" />
 +
<variable name="ACTIVEX_shortversion"        value="14_0_0_176" />
 +
 +
<variable name="MAJORVERSION"        value="14" />
  
According to bulletin and to the "Adobe Flash Player Administration Guide" (you find the link in the same security bulletin):
+
<variable name="PKG_SOURCE"          value="%SWSOURCE%\AdobeFlashPlayer\V14\ALL" /><!-- set this to your environment, %SWSOURCE% my be \\servername\path -->
 +
 +
<variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
 +
<variable name="PKG_DESTINATION"      value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
 +
 +
<variable name="PKG_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
 +
 +
<variable name="PKG_FILE_ACTIVEX"    value="Flash32_%ACTIVEX_shortversion%.ocx" />
 +
<variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%PLUGIN_shortversion%.dll" />
 +
 +
<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%ACTIVEX_shortversion%.ocx" />
 +
<variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%PLUGIN_shortversion%.dll" />
 +
 +
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"              value="%ACTIVEX_VERSION%" />
 +
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"                value="%PLUGIN_VERSION%" />
 +
 +
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%" value="%ACTIVEX_VERSION%" />
 +
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%" value="%PLUGIN_VERSION%" />
  
* create a file named "mms.cfg"
+
<check type="file"     condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%ACTIVEX_VERSION%" architecture="x64" />
* write in this file the lines containing the "ParameterName = ParameterValue" pairs you need, "AVHardwareDisable = 1" in this APSA08-08 case
+
<check type="file"     condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%" value="%PLUGIN_VERSION%" architecture="x64" />
* deploy it with the following WPKG package
+
 +
<commands>
 +
<command type="install" include="remove" />
 +
 +
<command type="downgrade" include="install" />
 +
 +
<command type="upgrade" include="install" />
  
<source lang="xml">
+
<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%MAJORVERSION%_active_x.exe" /install ' />
<package id="flash-settings" name="Adobe Flash Player settings for APSA08-08 vulnerability" revision="1" reboot="false" priority="0" execute="once">
+
<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%MAJORVERSION%_plugin.exe" /install ' />
  <install cmd='%COMSPEC% /c copy /Y "%SOFTWARE%\Flash\settings\mms.cfg " "%WINDIR%\system32\Macromed\Flash\" ' />
+
</package>
+
<command type="remove" cmd="taskkill /F /IM Firefox.exe">
 +
<exit code="0" />
 +
<exit code="128" />
 +
<exit code="1" />
 +
</command>
 +
<command type="remove" cmd="taskkill /F /IM iexplore.exe">
 +
<exit code="0" />
 +
<exit code="128" />
 +
<exit code="1" />
 +
</command>
 +
<command type="remove" cmd='"%PKG_SOURCE%\uninstall_flash_player.exe" -uninstall'>
 +
<exit code="any" />
 +
</command>
 +
</commands>
 +
    </package>
 
</source>
 
</source>
  
Or you could just integrate this line with the installation packages above, if you do not want to keep it as a separate package.
+
=== Adobe Flash Player 11.1 ===
  
 +
Starting with Flash Player 11 there is a separate download available for 64-bit Windows.
  
== Adobe Flash Player 9.0.115.0 for Firefox ==
+
The 32-bit installer will refuse to install on 64-bit systems.
  
Installer packaged as an executable, installs as a plugin.
+
The 64-bit installer installs the 32-bit and 64-bit executables.
 +
 
 +
==== Internet Explorer / ActiveX control version ====
  
 
<source lang="xml">
 
<source lang="xml">
<package id="flashplayerfirefox" name="Adobe Flash Player for Firefox" revision="1" reboot="false" priority="0">
+
<package  
   <depends package-id="firefox"/>
+
  id="flashplayer_ie"
   <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.115.0"/>
+
  name="Adobe Flash Player for IE"
   <install cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
  revision="%version%"
   <upgrade cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
  reboot="false"
   <remove cmd='%WINDIR%\system32\Macromed\Flash\uninstall_plugin.exe /S'/>
+
  priority="10">
 +
 
 +
   <variable name="version" value="11.1.102.63" />
 +
  <variable name="shortversion" value="11g" />
 +
 
 +
   <check type="logical" condition="or">
 +
    <check
 +
      type="file"
 +
      condition="versionequalto"
 +
      path="%SYSTEMROOT%\system32\Macromed\Flash\Flash%shortversion%.ocx"
 +
      value="%version%" />
 +
 
 +
    <check
 +
      type="file"
 +
      condition="versionequalto"
 +
      path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash%shortversion%.ocx"
 +
      value="%version%" />
 +
  </check>
 +
 
 +
  <install cmd='taskkill /f /im iexplore.exe'>
 +
    <exit code='0' />
 +
    <exit code='1' />
 +
    <exit code='128' />
 +
  </install>
 +
 
 +
   <install cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall activex'>
 +
    <exit code='any' />
 +
  </install>
 +
 
 +
  <install cmd='%SOFTWARE%\flash\install_flash_player_11_active_x_32bit.exe -install' />
 +
 +
  <upgrade cmd='taskkill /f /im iexplore.exe'>
 +
    <exit code='0' />
 +
    <exit code='1' />
 +
    <exit code='128' />
 +
  </upgrade>
 +
 
 +
   <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall activex'>
 +
    <exit code='any' />
 +
  </upgrade>
 +
 
 +
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_11_active_x_32bit.exe -install' />
 +
 
 +
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
 +
 
 +
   <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
 
</package>
 
</package>
 
</source>
 
</source>
  
== Adobe Flash Player 9.0.115.0 for Internet Explorer ==
+
==== Firefox and Other Browsers / Plugin version ====
 
+
Installer packaged as .msi, installs as an ActiveX. The line "Adobe Flash Player 9 ActiveX" in Control Panel's Add/Remove Programs doesn't show any minor version, so both this line and the detailed ocx's file version have to be checked with a logical and condition.
+
  
 
<source lang="xml">
 
<source lang="xml">
<package id="flashplayerie" name="Adobe Flash Player for Internet Explorer" revision="1" reboot="false" priority="0">
+
<package  
   <check type="logical" condition="and">
+
  id="flashplayer_mozilla"
     <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9e.ocx" value="9.0.115.0"/>
+
  name="Adobe Flash Player for Mozilla/Opera"
     <check type="uninstall" condition="exists" path="Adobe Flash Player 9 ActiveX"/>
+
  revision="%version%"
 +
  reboot="false"
 +
  priority="10">
 +
 
 +
  <variable name="version" value="11.1.102.63" />
 +
  <variable name="shortversion" value="11g" />
 +
 
 +
   <check type="logical" condition="or">
 +
     <check
 +
      type="file"
 +
      condition="versionequalto"
 +
      path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="%version%" />
 +
 
 +
     <check
 +
      type="file"
 +
      condition="versionequalto"
 +
      path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="%version%" />
 
   </check>
 
   </check>
   <install cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
 
     <exit code="3010" reboot="true" />
+
   <install cmd='taskkill /f /im firefox.exe'>
 +
     <exit code='0' />
 +
    <exit code='1' />
 +
    <exit code='128' />
 
   </install>
 
   </install>
   <upgrade cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
 
     <exit code="3010" reboot="true" />
+
   <install cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall plugin'>
 +
    <exit code='any' />
 +
  </install>
 +
 
 +
  <install cmd='%SOFTWARE%\flash\install_flash_player_11_plugin_32bit.exe -install' />
 +
 
 +
  <upgrade cmd='taskkill /f /im firefox.exe'>
 +
     <exit code='0' />
 +
    <exit code='1' />
 +
    <exit code='128' />
 
   </upgrade>
 
   </upgrade>
   <remove cmd='MsiExec.exe /qn /X{8E9DB7EF-5DD3-499E-BA2A-A1F3153A4DF8}'/>
+
 
 +
   <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall plugin'>
 +
    <exit code='any' />
 +
  </upgrade>
 +
 
 +
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_11_plugin_32bit.exe -install' />
 +
 
 +
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
 +
 
 +
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
 
</package>
 
</package>
 
</source>
 
</source>
  
 +
==== Combined Internet Explorer / ActiveX control version and Firefox and Other Browsers / Plugin version, and 32-bit and 64-bit versions ====
  
== Adobe Flash Player 9.0.47.0 for Firefox ==
+
===== This package requires wpkg.js 1.2.1-RC20 or higher =====
  
Installer packaged as an executable, installs as a plugin. Didn't test if the uninstall_plugin.exe in the remove line removes both this and Internet Explorer Flash Player ActiveX.
+
<source lang="xml">
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<packages
 +
        xmlns:xsi="http://www.wpkg.org/packages"
 +
        xsi:noNamespaceSchemaLocation="../xsd/packages.xsd" >
 +
 +
    <package id="AdobeFlashPlayer"
 +
            name="Adobe Flash Player"
 +
            revision="%PKG_VERSION%"
 +
            reboot="false"
 +
            priority="10">       
 +
        <variable name="PKG_VERSION"          value="11.1.102.63" />
 +
        <variable name="PKG_SOURCE"          value="%SOFTWARE%\Flash\%PKG_VERSION%" />
 +
        <variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
 +
        <variable name="PKG_DESTINATION"      value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
 +
        <variable name="PKG_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
 +
        <variable name="PKG_FILE_ACTIVEX"    value="Flash11g.ocx" />
 +
        <variable name="PKG_FILE_PLUGIN"      value="NPSWF32.dll" />
 +
        <variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_11_1_102.ocx" />
 +
        <variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_11_1_102.dll" />
 +
 +
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"              value="%PKG_VERSION%" />
 +
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"              value="%PKG_VERSION%" />
 +
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%"        value="%PKG_VERSION%" />
 +
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%"          value="%PKG_VERSION%" />
 +
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%PKG_VERSION%" architecture="x64" />
 +
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%"  value="%PKG_VERSION%" architecture="x64" />
 +
 +
        <install include="remove" />
 +
        <install architecture="x86" cmd='"%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install ' />
 +
        <install architecture="x86" cmd='"%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />
 +
        <install architecture="x64" cmd='"%PKG_SOURCE%\install_flash_player_11_active_x_64bit.exe" /install ' />
 +
        <install architecture="x64" cmd='"%PKG_SOURCE%\install_flash_player_11_plugin_64bit.exe" /install ' />
 +
 +
        <upgrade include="install" />
 +
 +
        <remove cmd="taskkill /F /IM Firefox.exe">
 +
          <exit code="0" />
 +
          <exit code="128" />
 +
          <exit code="1" />
 +
        </remove>
 +
        <remove cmd="taskkill /F /IM iexplore.exe">
 +
          <exit code="0" />
 +
          <exit code="128" />
 +
          <exit code="1" />
 +
        </remove>
 +
        <remove architecture="x86" cmd='"%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' >
 +
            <exit code="any" />
 +
        </remove>
 +
        <remove architecture="x64" cmd='"%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' >
 +
            <exit code="any" />
 +
        </remove>
 +
    </package>
 +
</packages>
 +
</source>
 +
 
 +
===== This package works with WPKG 1.2.0 =====
  
 
<source lang="xml">
 
<source lang="xml">
<package id="flashplayerfirefox" name="Adobe Flash Player for Firefox" revision="1" reboot="false" priority="0">
+
<?xml version="1.0" encoding="UTF-8"?>
  <depends package-id="firefox"/>
+
<package id="AdobeFlashPlayer" name="Adobe Flash Player (all versions, all platforms)" revision="%PKG_VERSION%" reboot="false" priority="1">
  <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.47.0"/>
+
        <variable name="PKG_VERSION"            value="11.1.102.63" />
  <install cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
        <variable name="PKG_SOURCE"            value="%SOFTWARE%\Flash\%PKG_VERSION%" />
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
 
  <remove cmd='%WINDIR%\system32\Macromed\Flash\uninstall_plugin.exe /S'/>
+
        <check type="logical" condition="and" >
 +
                <check type="uninstall" condition="versionequalto"      path="Adobe Flash Player .+ ActiveX.*"    value="%PKG_VERSION%" />
 +
                <check type="uninstall" condition="versionequalto"      path="Adobe Flash Player .+ Plugin.*"     value="%PKG_VERSION%" />
 +
        </check>
 +
 
 +
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></install>
 +
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install' />
 +
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />
 +
 
 +
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></install>
 +
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_active_x_64bit.exe" /install ' />
 +
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_plugin_64bit.exe" /install ' />
 +
 
 +
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></upgrade>
 +
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install' />
 +
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />
 +
 
 +
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></upgrade>
 +
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_active_x_64bit.exe" /install ' />
 +
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_plugin_64bit.exe" /install ' />
 +
 
 +
        <remove cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></remove>
 +
        <remove cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></remove>
 
</package>
 
</package>
 
</source>
 
</source>
  
== Adobe Flash Player 9.0.47.0 for Internet Explorer ==
 
  
Installer packaged as .msi, installs as an ActiveX. The line "Adobe Flash Player 9 ActiveX" in Control Panel's Add/Remove Programs doesn't show any minor version, so both this line and the detailed ocx's file version have to be checked with a logical and condition.
+
=== Adobe Flash Player 10  ===
 +
 
 +
Flash Player 10 is still supported with security updates, the most recent being 10.3.183.11.
 +
 
 +
The latest version of the 10.x series is no longer available from http://www.adobe.com/special/products/flashplayer/fp_distribution3.html, that version is 10.3.183.11. To get 10.3.183.11 you have to either go to http://kb2.adobe.com/cps/142/tn_14266.html and unzip fp_10.3.183.11_archive.zip to get flashplayer10_3r183_11_win.exe, which you can install in the usual way, or manually upgrade from within the program.
 +
 
 +
10.3 changelog: http://kb2.adobe.com/cps/901/cpsid_90194.html#main_authoring
 +
 
 +
==== WPKG installer for Internet Explorer with Win64bit check ====
 +
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player_ax.exe here].
 +
[http://download.macromedia.com/pub/flashplayer/current/uninstall_flash_player.exe Download Uninstall Flash Player]
  
 
<source lang="xml">
 
<source lang="xml">
<package id="flashplayerie" name="Adobe Flash Player for Internet Explorer" revision="1" reboot="false" priority="0">
+
<package  
   <check type="logical" condition="and">
+
  id="flashplayer_ie"
     <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9d.ocx" value="9.0.47.0"/>
+
  name="Adobe Flash Player for IE"
     <check type="uninstall" condition="exists" path="Adobe Flash Player 9 ActiveX"/>
+
  revision="%version%"
 +
  reboot="false"
 +
  priority="10">
 +
 
 +
  <variable name="version" value="10.3.183.10" />
 +
  <variable name="shortversion" value="10x" />
 +
 
 +
  <check type="uninstall" condition="exists" path="Adobe Flash Player 10 ActiveX" />
 +
       
 +
   <check type="logical" condition="or">
 +
     <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash%shortversion%.ocx" value="%version%"/>
 +
     <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash%shortversion%.ocx" value="%version%"/>
 
   </check>
 
   </check>
   <install cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
 
    <exit code="3010" reboot="true" />
+
   <install cmd='%SOFTWARE%\flash\uninstall_flash_player.exe -uninstall'><exit code='any' /></install>
   </install>
+
  <!-- use "/s" or "/silent" as silent-switch if using an older uninstaller-->
   <upgrade cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
 
    <exit code="3010" reboot="true" />
+
   <install cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
   </upgrade>
+
   <install cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /install' />
   <remove cmd='MsiExec.exe /qn /X{786547F9-59BB-4FA3-B2D8-327FF1F14870}'/>
+
 
 +
  <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player.exe -uninstall'><exit code='any' /></upgrade>
 +
  <!-- use "/s" or "/silent" as silent-switch if using an older uninstaller-->
 +
 
 +
   <upgrade cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>  
 +
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /install' />
 +
   
 +
   <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
 +
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
 
</package>
 
</package>
 
</source>
 
</source>
  
 +
==== WPKG installer for Firefox/Opera with Win64bit check ====
 +
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe here].
  
== Older versions ==
+
Note that where '/S' was used for silent installation with previous versions, '/install' is required with version 10.1.
 
+
Note: Recent versions of Flash for Firefox seem to install in a different directory than indicated below. You may need to change the check to:
+
  
 
<source lang="xml">
 
<source lang="xml">
<check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.45.0"/>
+
<package
 +
  id="flashplayer_mozilla"
 +
  name="Adobe Flash Player for Mozilla/Opera"
 +
  revision="%version%"
 +
  reboot="false"
 +
  priority="10">
  
<check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9c.ocx" value="9.0.45.0"/>
+
  <variable name="version" value="10.3.183.10" />
 +
  <variable name="shortversion" value="10x" />
 +
       
 +
  <check type="logical" condition="or">
 +
    <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="%version%" />
 +
    <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="%version%" />
 +
  </check>
 +
 
 +
  <install cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
 +
  <install cmd='%SOFTWARE%\flash\install_flash_player.exe /install' />
 +
 
 +
  <upgrade cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>   
 +
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player.exe /install' />
 +
   
 +
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
 +
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
 +
</package>
 
</source>
 
</source>
  
----
+
====Filenames====
 +
Note the different filenames used between different versions.
  
 +
{| border="1"
 +
! !! Program (IE) !! Uninstaller (IE) !! Uninstaller (Firefox/Opera)
 +
|-
 +
! 11.0.1.152
 +
| Flash11c.ocx  || FlashUtil11c_ActiveX.exe  || FlashUtil11c_Plugin.exe
 +
|-
 +
! 11.0.1.60
 +
| Flash11a.ocx  || FlashUtil11a_ActiveX.exe  || FlashUtil11a_Plugin.exe
 +
|-
 +
! 10.3.183.15
 +
| Flash10za.ocx  || FlashUtil10za_ActiveX.exe  || FlashUtil10za_Plugin.exe
 +
|-
 +
! 10.3.183.11
 +
| Flash10y.ocx  || FlashUtil10y_ActiveX.exe  || FlashUtil10y_Plugin.exe
 +
|-
 +
! 10.3.183.10
 +
| Flash10x.ocx  || FlashUtil10x_ActiveX.exe  || FlashUtil10x_Plugin.exe
 +
|-
 +
! 10.3.183.7
 +
| Flash10w.ocx  || FlashUtil10w_ActiveX.exe  || FlashUtil10w_Plugin.exe
 +
|-
 +
! 10.3.183.5
 +
| Flash10v.ocx  || FlashUtil10v_ActiveX.exe  || FlashUtil10v_Plugin.exe
 +
|-
 +
! 10.3.181.34
 +
| Flash10u.ocx  || FlashUtil10u_ActiveX.exe  || FlashUtil10u_Plugin.exe
 +
|-
 +
! 10.3.181.26
 +
| Flash10t.ocx  || FlashUtil10t_ActiveX.exe  || FlashUtil10t_Plugin.exe
 +
|-
 +
! 10.3.181.23
 +
| Flash10s.ocx  || FlashUtil10s_ActiveX.exe  ||
 +
|-
 +
! 10.3.181.22
 +
|  n/a          || || FlashUtil10s_Plugin.exe
 +
|-
 +
! 10.3.181.16
 +
| Flash10r.ocx  || FlashUtil10r_ActiveX.exe  || FlashUtil10r_Plugin.exe
 +
|-
 +
! 10.3.181.14
 +
| Flash10q.ocx  || FlashUtil10q_ActiveX.exe  || FlashUtil10q_Plugin.exe
 +
|-
 +
! 10.2.159.1
 +
| Flash10p.ocx  || FlashUtil10p_ActiveX.exe  || FlashUtil10p_Plugin.exe
 +
|-
 +
! 10.2.153.1
 +
| Flash10o.ocx  || FlashUtil10o_ActiveX.exe  || FlashUtil10o_Plugin.exe
 +
|-
 +
! 10.2.152.32
 +
| Flash10n.ocx  || FlashUtil10n_ActiveX.exe  || FlashUtil10n_Plugin.exe
 +
|-
 +
! 10.2.152.26
 +
| Flash10m.ocx  || FlashUtil10m_ActiveX.exe  || FlashUtil10m_Plugin.exe
 +
|-
 +
! 10.1.102.64
 +
| Flash10l.ocx  || FlashUtil10l_ActiveX.exe  || FlashUtil10l_Plugin.exe
 +
|-
 +
! 10.1.85.3
 +
| Flash10k.ocx  || FlashUtil10k_ActiveX.exe  || FlashUtil10k_Plugin.exe
 +
|-
 +
! 10.1.82.76
 +
| Flash10i.ocx  || FlashUtil10i_ActiveX.exe  || FlashUtil10i_Plugin.exe
 +
|-
 +
! 10.1.53.64
 +
| Flash10h.ocx  || FlashUtil10h_ActiveX.exe  || FlashUtil10h_Plugin.exe
 +
|}
  
Here's the silent installers for the Adobe Flash Player 9 for IE and Firefox. Uninstalling the Firefox plugin is missing, since Adobe's uninstall_flash_player.exe removes both plugins, which is not our goal here. If you want to install a newer version (this is for 9.0.16.0), don't forget to change the value in the 'check type' tag. For downloading the .msi version (for the IE ActiveX control), Adobe has an easy registration procedure, but if you smart enough, you can find out how to download without registration :)
+
=== Adobe Flash Player 10 for Internet Explorer with Win64bit check===
 +
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player_ax.exe here].
  
 
<source lang="xml">
 
<source lang="xml">
<package
+
<package  
  id="flashplayerfirefox"
+
    id="flashplayer_ie"
  name="Flash Player Firefox"
+
    name="Adobe Flash Player 10 for IE"
  revision="90160"
+
    revision="1004502"
  reboot="false"
+
    reboot="false"
  priority="0">
+
    priority="10">
+
  <depends package-id="firefox"/>
+
+
  <check type="file" condition="versiongreaterorequal" path="%PROGRAMFILES%\Mozilla Firefox\plugins\NPSWF32.dll" value="9.0.16.0"/>
+
  <install cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
</package>
+
  
  
<package
+
    <check type="uninstall" condition="exists" path="Adobe Flash Player 10 ActiveX" />
  id="flashplayerie"
+
       
  name="Flash Player IE"
+
    <check type="logical" condition="or">
  revision="90160"
+
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash10e.ocx" value="10.0.45.2"/>
  reboot="false"
+
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash10e.ocx" value="10.0.45.2"/>
  priority="0">
+
    </check>
+
 
  <check type="logical" condition="and">
+
    <install cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
    <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9.ocx" value="9.0.16.0"/>
+
    <install cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /S' />
    <check type="uninstall" condition="exists" path="Adobe Flash Player 9 ActiveX"/>
+
 
  </check>
+
    <upgrade cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>  
+
    <upgrade cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /S' />
  <install cmd='msiexec /q /i  %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
   
    <exit code="0" />
+
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" /S'/>
    <exit code="3010" reboot="true" />
+
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_activeX.exe" /S'/>
  </install>
+
+
  <upgrade cmd='msiexec /q /i  %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
    <exit code="0" />
+
    <exit code="3010" reboot="true" />
+
  </upgrade>
+
+
  <remove cmd='MsiExec.exe /q /X{BB65C393-C76E-4F06-9B0C-2124AA8AF97B}'/>
+
 
</package>
 
</package>
 
</source>
 
</source>
  
 +
=== Adobe Flash Player 10 for Firefox/Opera with Win64bit check ===
 +
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe here].
  
----
+
<source lang="xml">
 +
<package
 +
    id="flashplayer_mozilla"
 +
    name="Adobe Flash Player 10 for Mozilla/Opera"
 +
    revision="1004502"
 +
    reboot="false"
 +
    priority="10">
  
 +
    <check type="uninstall" condition="exists" path="Adobe Flash Player 10 Plugin" />
  
This is a silent installer for Adobe Flash Player.
+
    <check type="logical" condition="or">
 +
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="10.0.45.2" />
 +
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="10.0.45.2" />
 +
    </check>
 +
       
  
There are versions of Adobe Flash Player for Internet Explorer and for [[Firefox|Mozilla Firefox]].
+
    <install cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
 +
    <install cmd='%SOFTWARE%\flash\install_flash_player.exe /S' />
 +
   
 +
    <upgrade cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>
 +
    <upgrade cmd='%SOFTWARE%\flash\install_flash_player.exe /S' />
 +
       
 +
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_plugin.exe" /S'/>
 +
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_plugin.exe" /S'/>
 +
</package>
 +
</source>
  
Adobe Flash Player for Firefox should be installed '''after''' Firefox is installed - and hence the [[Firefox]] installer should have a higher priority (or set a dependency).
+
=== Adobe Flash Player 9.0.246.0 for Firefox ===
  
'''This is an Adobe Flash Player for Mozilla Firefox installer:'''
+
Installer packaged as an executable, installs as a plugin. Sometimes it is upgraded only on the second run of WPKG, it must be a timing issue between installing over previous version and checking conditions.
  
 
<source lang="xml">
 
<source lang="xml">
<package
+
<package id="flashplayerfirefox" name="Adobe Flash Player for Firefox" revision="1" reboot="false" priority="0">
  id="flashplayerfirefox"
+
  <depends package-id="firefox"/>
  name="Flash Player Firefox"
+
   <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.246.0"/>
  revision="1"
+
   <install cmd='%SOFTWARE%\Flash\install_flash_player.exe /S' />
  reboot="false"
+
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player.exe /S' />
  priority="0">
+
  <remove cmd='%WINDIR%\system32\Macromed\Flash\uninstall_plugin.exe /S'/>
+
   <check type="file" condition="exists" path="%PROGRAMFILES%\Mozilla Firefox\plugins\NPSWF32.dll" />
+
+
   <install cmd='%SOFTWARE%\Flash_Firefox\flashplayer7installer.exe /S' />
+
+
 
</package>
 
</package>
 
</source>
 
</source>
  
'''This is an Adobe Flash Player for Internet Explorer installer:'''
+
If you use WPKG whilst logged in then it's good to kill the Firefox application process before installing Flash Player, since the installer won't work with the browser running. To do this add this to the WPKG code:
 +
<source lang="xml">
 +
<install cmd="taskkill /F /IM Firefox.exe">
 +
            <exit code="0" />
 +
            <exit code="128" />
 +
</install>
 +
</source>
 +
And of course:
 +
<source lang="xml">
 +
<upgrade cmd="taskkill /F /IM Firefox.exe">
 +
            <exit code="0" />
 +
            <exit code="128" />
 +
</upgrade>
 +
</source>
 +
 
 +
=== Adobe Flash Player 9.0.246.0 for Internet Explorer ===
 +
 
 +
Presumably the Internet Explorer version has the same installation/removal/upgrade syntax as the plugin version above, but the following code has not been tested.
  
 
<source lang="xml">
 
<source lang="xml">
<package
+
<package id="flashplayeractivex" name="ActiveX Flash Player" revision="20090730" reboot="false" priority="0">
  id="flashplayerie"
+
  <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash9c.ocx" value="9.0.246.0"/>
  name="Flash Player IE"
+
  <install cmd='%SOFTWARE%\Flash\install_flash_player_ax.exe /S' />
  revision="1"
+
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player_ax.exe /S' />
  reboot="false"
+
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" /S'/>
  priority="0">
+
</package>
+
  <check type="file" condition="exists" path="%WINDIR%\system32\Macromed\Flash\Flash.ocx" />
+
+
  <install cmd='%SOFTWARE%\Flash_IE\flashplayer7_winax.exe /Q' />
+
+
</package>
+
 
</source>
 
</source>
 +
 +
= External Links =
 +
* [http://www.adobe.com/devnet/flashplayer/enterprise_deployment.html Adobe Flash-Player Enterprise Deployment site]
 +
* [http://www.adobe.com/devnet/flashplayer/articles/flash_player_admin_guide.html Adobe Flash-Player 10 Admin Guide]
 +
* [http://www.adobe.com/products/players/fpsh_distribution1.html Adobe Flash-Player licence request form]
 +
* [http://get.adobe.com/flashplayer/otherversions/ Download Adobe Flash Player (with OS and browser chooser)]
 +
* [http://www.adobe.com/go/full_flashplayer_win_pl_msi http://www.adobe.com/go/full_flashplayer_win_pl_msi]
  
 
[[category:Silent Installers]]
 
[[category:Silent Installers]]
 
[[category:Security Advisories]]
 
[[category:Security Advisories]]
 +
[[category:Adobe software]]

Latest revision as of 19:53, 10 May 2020

This is a silent installer for Adobe Flash Player. To use these installers on your network, you will need to get a licence but this is a simple free process.

Documentation for all versions

Adobe Flash Platform Runtime Releases - Announcements and release notes for Adobe AIR and Adobe Flash Player: http://blogs.adobe.com/flashruntimereleases/ (Last update 2011!?)

Security bulletins and advisories: http://www.adobe.com/support/security/#flashplayer

Download Flash Player

Uninstaller: http://helpx.adobe.com/flash-player/kb/uninstall-flash-player-windows.html

Installer: https://www.adobe.com/products/flashplayer/distribution5.html

Windows 8 & 8.1

Windows 8 & 8.1 includes Flash for IE and the activex plugin will fail with an error of 1031. To use the one combined package, note the OS checks that exclude Windows 8 from the activex installer

Adobe Flash Player 32

A lot of useful information can be found in the Adobe Flash Player 16 section.

<package 
	id="adobeflashplayernpapi"
	name="Adobe Flash Player NPAPI"
	revision="%PKG_VERSION%"
	reboot="false"
	priority="0">

	<depends package-id="firefox" />

	<variable name="PKG_VERSION"	  	value="32.0.0.363" />
	<variable name="PKG_SOURCE"			value="%SOFTWARE%\Adobe\FlashPlayer" />
	<variable name="PKG_NAME"			value="install_flash_player.exe" />
	<variable name="PKG_REMOVE_NAME"	value="uninstall_flash_player.exe" />
	<variable name="PKG_FILE_PLUGIN"	value="NPSWF32_32_0_0_363.dll" />
	<variable name="PKG_INSTALL_SWITCH"	value="-install" />
	<variable name="PKG_REMOVE_SWITCH"	value="-uninstall" />
	<variable name="PKG_DESTINATION"	value="%SystemRoot%\System32\Macromed\Flash" architecture="x86"/>
	<variable name="PKG_DESTINATION"	value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>


	<check type="logical" condition="and">
		<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ NPAPI" value="%PKG_VERSION%" />
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%" value="%PKG_VERSION%" />
	</check>

	<install cmd='"%PKG_SOURCE%\%PKG_REMOVE_NAME%" %PKG_REMOVE_SWITCH%' >
		<exit code="any" />
	</install>
	<install cmd='"%PKG_SOURCE%\%PKG_NAME%" %PKG_INSTALL_SWITCH%' />
	<install cmd='%COMSPEC% /C copy /Y /V "%PKG_SOURCE%\mms.cfg" "%PKG_DESTINATION%"' >
		<exit code="any"/>
	</install>

        <upgrade include="install" />

	<remove cmd='"%PKG_SOURCE%\%PKG_REMOVE_NAME%" %PKG_REMOVE_SWITCH%' />

</package>

Adobe Flash Player 16

Package written to keep in-line with previously documented working solutions which should give you the ability to just download the latest and update version number to make the jump to future versions.

The files you download from Adobe are not named the way this package requires. You must rename the NPAPI plugin from install_flash_player.exe to install_flash_player_%MAJORVERSION%_npapi.exe and the ActiveX plugin from install_flash_player_ax.exe to install_flash_player_%MAJORVERSION%_active_x.exe, e.g. install_flash_player_16.0.0.235_npapi.exe and install_flash_player_16.0.0.235_active_x.exe.

The uninstall check for the NPAPI plugin changed slightly for version 16, but it's otherwise the same as 15.


Package for WPKG 1.2.1 or higher

Version 14.0.0.176 of the Flash Player was only released for NPAPI and version 14.0.0.179 was only released for ActiveX, so this package supports checking different versions of each plugin. As of 16.0.0.235 no further mismatched-version releases have been made.

<package id="AdobeFlashPlayer" 
         name="AdobeFlashPlayer" 
         revision="%PKG_VERSION%" 
         reboot="false" 
         priority="10">

	
		<variable name="PKG_NAME"             value="ADOBE-FLASHPLAYER" />

		<variable name="PKG_VERSION"          value="16.0.0.235" />
		
		<variable name="NPAPI_VERSION"          value="16.0.0.235" />
		<variable name="ACTIVEX_VERSION"          value="16.0.0.235" />
		
		<variable name="NPAPI_shortversion"         value="16_0_0_235" />
		<variable name="ACTIVEX_shortversion"         value="16_0_0_235" />

		<variable name="PKG_SOURCE"           value="%SWSOURCE%\AdobeFlashPlayer\V14\ALL" /><!-- set this to your environment, %SWSOURCE% my be \\servername\path -->
	 
		<variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
		<variable name="PKG_DESTINATION"      value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
		
		<variable name="PKG_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
		
		<variable name="PKG_FILE_ACTIVEX"     value="Flash32_%ACTIVEX_shortversion%.ocx" />
		<variable name="PKG_FILE_NPAPI"      value="NPSWF32_%NPAPI_shortversion%.dll" />
		
		<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%ACTIVEX_shortversion%.ocx" />
		<variable name="PKG_FILE_NPAPI_X64"  value="NPSWF64_%NPAPI_shortversion%.dll" />
	 
		<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"               value="%ACTIVEX_VERSION%" />
		<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ NPAPI.*"                value="%NPAPI_VERSION%" />
		
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%" value="%ACTIVEX_VERSION%" os="(5\.[1-9]|6\.[01])\.\d{4}" />
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_NPAPI%" value="%NPAPI_VERSION%" />

		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%ACTIVEX_VERSION%" architecture="x64" />
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_NPAPI_X64%" value="%NPAPI_VERSION%" architecture="x64" />
		
		<commands>
			<command type="install" include="remove" />
			
			<command type="downgrade" include="install" />
			
			<command type="upgrade" include="install" />

			<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%PKG_VERSION%_active_x.exe" /install ' os="(5\.[1-9]|6\.[01])\.\d{4}" />
			<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%PKG_VERSION%_npapi.exe" /install ' />
	 
			<command type="remove" cmd="taskkill /F /IM Firefox.exe">
				<exit code="0" />
				<exit code="128" />
				<exit code="1" />
			</command>
			<command type="remove" cmd="taskkill /F /IM iexplore.exe">
				<exit code="0" />
				<exit code="128" />
				<exit code="1" />
			</command>
			<command type="remove" cmd='"%PKG_SOURCE%\uninstall_flash_player.exe" -uninstall'>
				<exit code="any" />
			</command>
		</commands>
    </package>

Using Microsoft EMET

If you use Microsoft EMET http://www.microsoft.com/en-us/download/details.aspx?id=29851 as additional layer of protection, you need to protect Internet Explorer and Firefox in order to protect the Flash plugin. It is neither necessary nor sufficient to add EMET rules to protect executables in %systemroot%\system32\macromed\Flash because the only executables in that directory are uninstallers. The Flash plugin runs as part of the Firefox plugin-container or the Internet Explorer process.

If you want to protect those files anyway, it's bit of a hassle to add new player versions to EMET configuration because EMET does not accept wildcards in executable filenames. Automate the process with this script:

rem %PKG_SOURCE%\emet.cmd

if exist "%programfiles%\EMET\emet_conf.exe" (
@FOR /F %%G IN ('"dir /b %systemroot%\system32\macromed\Flash\*.exe 2> nul"') DO "%programfiles%\emet\emet_conf.exe" --set \windows\system32\macromed\Flash\%%G 2> nul
@FOR /F %%G IN ('"dir /b %systemroot%\SysWOW64\macromed\Flash\*.exe 2> nul"') DO "%programfiles%\emet\emet_conf.exe" --set \windows\SysWOW64\Macromed\Flash\"%%G 2> nul
)

and append line

<install cmd='cmd /c "%PKG_SOURCE%\emet.cmd" &gt;nul ' />

to your flash install script.

Disable Automatic Update dialog in Adobe Flash Player

When Using MSI and EXE Installers

Flash Player automatically checks with adobe.com to see if an updated version is available and if there is it presents a dialog prompting the user to upgrade. To disable this update check and prompting you can do the following:

  • if it doesn't already exist, create a directory %WINDIR%\system32\Macromed\Flash\ (%WINDIR%\SysWOW64\Macromed\Flash for 64-bit system)
  • if it doesn't already exist, create a file there called "mms.cfg" (this file can also be used to deploy other settings)
  • add an entry in this file: AutoUpdateDisable=1

This configuration can be performed by WPKG using the following:

<install cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\system32\Macromed\Flash\' >
 	<exit code="any"/>
</install>
<install cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\SysWOW64\Macromed\Flash\' >
 	<exit code="any"/>
</install>

<upgrade cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\system32\Macromed\Flash\' >
	<exit code="any"/>
</upgrade>
<upgrade cmd='%COMSPEC% /c copy /y /v "%SOFTWARE%\flash\mms.cfg" %WINDIR%\SysWOW64\Macromed\Flash\' >
	<exit code="any"/>
</upgrade>

<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\system32\Macromed\Flash\mms.cfg"' >
  <exit code="0" />
  <exit code="1" />  <!-- if file does not exist -->
</remove>
<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\SysWOW64\Macromed\Flash\mms.cfg"' >
  <exit code="0" />
  <exit code="1" />  <!-- if file does not exist -->
</remove>

Either you can deploy this using WPKG as part of the Flash Player installer (Section 1.1 or 1.2), or create a separate package for this setting which would allow you to deploy updates to this file separately to the Flash Player itself.

This file will prevent current and older versions of Flash from auto-updating.

When using EXE Installers

You can use the "-au 2" installation option to disable automatic updates when using the EXE-based installer, but not the MSI-based installer. mms.cfg will be created for you in the normal location.

Older Versions

Adobe Flash Player 11.2 through 15

Package written to keep in-line with previously documented working solutions which should give you the ability to just download the latest and update version number to make the jump to future versions.

The files you download from Adobe are not named the way this package requires. You must rename the NPAPI plugin from install_flash_player.exe to install_flash_player_%MAJORVERSION%_plugin.exe and the ActiveX plugin from install_flash_player_ax.exe to install_flash_player_%MAJORVERSION%_active_x.exe, e.g. install_flash_player_16.0.0.235_plugin.exe and install_flash_player_16.0.0.235_active_x.exe.

Flash Player 12 onwards features "Universal 32-bit and 64-bit installers for Mac and Windows browsers".

Package for WPKG 1.2.1 or higher

Version 14.0.0.176 of the Flash Player was only released for NPAPI and version 14.0.0.179 was only released for ActiveX, so this package supports checking different versions of each plugin. As of 16.0.0.235 no further mismatched-version releases have been made.

<package id="AdobeFlashPlayer" 
         name="AdobeFlashPlayer" 
         revision="%PKG_VERSION%" 
         reboot="false" 
         priority="10">

	
		<variable name="PKG_NAME"             value="ADOBE-FLASHPLAYER" />

		<variable name="PKG_VERSION"          value="14.0.0.179" />
		
		<variable name="PLUGIN_VERSION"          value="14.0.0.179" />
		<variable name="ACTIVEX_VERSION"          value="14.0.0.176" />
		
		<variable name="PLUGIN_shortversion"         value="14_0_0_179" />
		<variable name="ACTIVEX_shortversion"         value="14_0_0_176" />
		
		<variable name="MAJORVERSION"         value="14" />

		<variable name="PKG_SOURCE"           value="%SWSOURCE%\AdobeFlashPlayer\V14\ALL" /><!-- set this to your environment, %SWSOURCE% my be \\servername\path -->
	 
		<variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
		<variable name="PKG_DESTINATION"      value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
		
		<variable name="PKG_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
		
		<variable name="PKG_FILE_ACTIVEX"     value="Flash32_%ACTIVEX_shortversion%.ocx" />
		<variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%PLUGIN_shortversion%.dll" />
		
		<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%ACTIVEX_shortversion%.ocx" />
		<variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%PLUGIN_shortversion%.dll" />
	 
		<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"               value="%ACTIVEX_VERSION%" />
		<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"                value="%PLUGIN_VERSION%" />
		
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%" value="%ACTIVEX_VERSION%" />
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%" value="%PLUGIN_VERSION%" />

		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%ACTIVEX_VERSION%" architecture="x64" />
		<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%" value="%PLUGIN_VERSION%" architecture="x64" />
		
		<commands>
			<command type="install" include="remove" />
			
			<command type="downgrade" include="install" />
			
			<command type="upgrade" include="install" />

			<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%MAJORVERSION%_active_x.exe" /install ' />
			<command type="install" cmd='"%PKG_SOURCE%\install_flash_player_%MAJORVERSION%_plugin.exe" /install ' />
	 
			<command type="remove" cmd="taskkill /F /IM Firefox.exe">
				<exit code="0" />
				<exit code="128" />
				<exit code="1" />
			</command>
			<command type="remove" cmd="taskkill /F /IM iexplore.exe">
				<exit code="0" />
				<exit code="128" />
				<exit code="1" />
			</command>
			<command type="remove" cmd='"%PKG_SOURCE%\uninstall_flash_player.exe" -uninstall'>
				<exit code="any" />
			</command>
		</commands>
    </package>

Adobe Flash Player 11.1

Starting with Flash Player 11 there is a separate download available for 64-bit Windows.

The 32-bit installer will refuse to install on 64-bit systems.

The 64-bit installer installs the 32-bit and 64-bit executables.

Internet Explorer / ActiveX control version

<package 
  id="flashplayer_ie"
  name="Adobe Flash Player for IE"
  revision="%version%"
  reboot="false"
  priority="10">

  <variable name="version" value="11.1.102.63" />
  <variable name="shortversion" value="11g" />

  <check type="logical" condition="or">
    <check
      type="file"
      condition="versionequalto"
      path="%SYSTEMROOT%\system32\Macromed\Flash\Flash%shortversion%.ocx"
      value="%version%" />

    <check
      type="file"
      condition="versionequalto"
      path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash%shortversion%.ocx"
      value="%version%" />
  </check>

  <install cmd='taskkill /f /im iexplore.exe'>
    <exit code='0' />
    <exit code='1' />
    <exit code='128' />
  </install>

  <install cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall activex'>
    <exit code='any' />
  </install>

  <install cmd='%SOFTWARE%\flash\install_flash_player_11_active_x_32bit.exe -install' />
	 
  <upgrade cmd='taskkill /f /im iexplore.exe'>
    <exit code='0' />
    <exit code='1' />
    <exit code='128' />
  </upgrade>

  <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall activex'>
    <exit code='any' />
  </upgrade>

  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_11_active_x_32bit.exe -install' />

  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>

  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
</package>

Firefox and Other Browsers / Plugin version

<package 
  id="flashplayer_mozilla"
  name="Adobe Flash Player for Mozilla/Opera"
  revision="%version%"
  reboot="false"
  priority="10">

  <variable name="version" value="11.1.102.63" />
  <variable name="shortversion" value="11g" />

  <check type="logical" condition="or">
    <check
      type="file"
      condition="versionequalto"
      path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="%version%" />

    <check
      type="file"
      condition="versionequalto"
      path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="%version%" />
  </check>

  <install cmd='taskkill /f /im firefox.exe'>
    <exit code='0' />
    <exit code='1' />
    <exit code='128' />
  </install>

  <install cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall plugin'>
    <exit code='any' />
  </install>

  <install cmd='%SOFTWARE%\flash\install_flash_player_11_plugin_32bit.exe -install' />

  <upgrade cmd='taskkill /f /im firefox.exe'>
    <exit code='0' />
    <exit code='1' />
    <exit code='128' />
  </upgrade>

  <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall plugin'>
    <exit code='any' />
  </upgrade>

  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_11_plugin_32bit.exe -install' />

  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>

  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
</package>

Combined Internet Explorer / ActiveX control version and Firefox and Other Browsers / Plugin version, and 32-bit and 64-bit versions

This package requires wpkg.js 1.2.1-RC20 or higher
<?xml version="1.0" encoding="UTF-8"?> 
<packages
        xmlns:xsi="http://www.wpkg.org/packages"
        xsi:noNamespaceSchemaLocation="../xsd/packages.xsd" >
 
    <package id="AdobeFlashPlayer"
            name="Adobe Flash Player"
            revision="%PKG_VERSION%"
            reboot="false"
            priority="10">        
        <variable name="PKG_VERSION"          value="11.1.102.63" />
        <variable name="PKG_SOURCE"           value="%SOFTWARE%\Flash\%PKG_VERSION%" />
        <variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
        <variable name="PKG_DESTINATION"      value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
        <variable name="PKG_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
        <variable name="PKG_FILE_ACTIVEX"     value="Flash11g.ocx" />
        <variable name="PKG_FILE_PLUGIN"      value="NPSWF32.dll" />
        <variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_11_1_102.ocx" />
        <variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_11_1_102.dll" />
 
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"              value="%PKG_VERSION%" />
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"               value="%PKG_VERSION%" />
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%"         value="%PKG_VERSION%" />
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%"          value="%PKG_VERSION%" />
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%PKG_VERSION%" architecture="x64" />
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%"  value="%PKG_VERSION%" architecture="x64" />
 
        <install include="remove" />
        <install architecture="x86" cmd='"%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install ' />
        <install architecture="x86" cmd='"%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />
        <install architecture="x64" cmd='"%PKG_SOURCE%\install_flash_player_11_active_x_64bit.exe" /install ' />
        <install architecture="x64" cmd='"%PKG_SOURCE%\install_flash_player_11_plugin_64bit.exe" /install ' />
 
        <upgrade include="install" />
 
        <remove cmd="taskkill /F /IM Firefox.exe">
          <exit code="0" />
          <exit code="128" />
          <exit code="1" />
        </remove>
        <remove cmd="taskkill /F /IM iexplore.exe">
          <exit code="0" />
          <exit code="128" />
          <exit code="1" />
        </remove>
        <remove architecture="x86" cmd='"%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' >
            <exit code="any" />
        </remove>
        <remove architecture="x64" cmd='"%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' >
            <exit code="any" />
        </remove>
    </package>
</packages>
This package works with WPKG 1.2.0
<?xml version="1.0" encoding="UTF-8"?>
<package id="AdobeFlashPlayer" name="Adobe Flash Player (all versions, all platforms)" revision="%PKG_VERSION%" reboot="false" priority="1">
        <variable name="PKG_VERSION"            value="11.1.102.63" />
        <variable name="PKG_SOURCE"             value="%SOFTWARE%\Flash\%PKG_VERSION%" />

        <check type="logical" condition="and" >
                <check type="uninstall" condition="versionequalto"      path="Adobe Flash Player .+ ActiveX.*"    value="%PKG_VERSION%" />
                <check type="uninstall" condition="versionequalto"      path="Adobe Flash Player .+ Plugin.*"     value="%PKG_VERSION%" />
        </check>

        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></install>
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install' />
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />

        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></install>
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_active_x_64bit.exe" /install ' />
        <install cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_plugin_64bit.exe" /install ' />

        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></upgrade>
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install' />
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />

        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></upgrade>
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_active_x_64bit.exe" /install ' />
        <upgrade cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\install_flash_player_11_plugin_64bit.exe" /install ' />

        <remove cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></remove>
        <remove cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></remove>
</package>


Adobe Flash Player 10

Flash Player 10 is still supported with security updates, the most recent being 10.3.183.11.

The latest version of the 10.x series is no longer available from http://www.adobe.com/special/products/flashplayer/fp_distribution3.html, that version is 10.3.183.11. To get 10.3.183.11 you have to either go to http://kb2.adobe.com/cps/142/tn_14266.html and unzip fp_10.3.183.11_archive.zip to get flashplayer10_3r183_11_win.exe, which you can install in the usual way, or manually upgrade from within the program.

10.3 changelog: http://kb2.adobe.com/cps/901/cpsid_90194.html#main_authoring

WPKG installer for Internet Explorer with Win64bit check

Download installer file here. Download Uninstall Flash Player

<package 
  id="flashplayer_ie"
  name="Adobe Flash Player for IE"
  revision="%version%"
  reboot="false"
  priority="10">

  <variable name="version" value="10.3.183.10" />
  <variable name="shortversion" value="10x" />

  <check type="uninstall" condition="exists" path="Adobe Flash Player 10 ActiveX" />
        
  <check type="logical" condition="or">
    <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash%shortversion%.ocx" value="%version%"/>
    <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash%shortversion%.ocx" value="%version%"/>
  </check>

  <install cmd='%SOFTWARE%\flash\uninstall_flash_player.exe -uninstall'><exit code='any' /></install>
  <!-- use "/s" or "/silent" as silent-switch if using an older uninstaller-->

  <install cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
  <install cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /install' />

  <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player.exe -uninstall'><exit code='any' /></upgrade>
  <!-- use "/s" or "/silent" as silent-switch if using an older uninstaller-->

  <upgrade cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>    
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /install' />
    
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
</package>

WPKG installer for Firefox/Opera with Win64bit check

Download installer file here.

Note that where '/S' was used for silent installation with previous versions, '/install' is required with version 10.1.

<package 
  id="flashplayer_mozilla"
  name="Adobe Flash Player for Mozilla/Opera"
  revision="%version%"
  reboot="false"
  priority="10">

  <variable name="version" value="10.3.183.10" />
  <variable name="shortversion" value="10x" />
        
  <check type="logical" condition="or">
    <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="%version%" />
    <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="%version%" />
  </check>

  <install cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
  <install cmd='%SOFTWARE%\flash\install_flash_player.exe /install' />

  <upgrade cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>    
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player.exe /install' />
    
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_Plugin.exe" /uninstall'/>
</package>

Filenames

Note the different filenames used between different versions.

Program (IE) Uninstaller (IE) Uninstaller (Firefox/Opera)
11.0.1.152 Flash11c.ocx FlashUtil11c_ActiveX.exe FlashUtil11c_Plugin.exe
11.0.1.60 Flash11a.ocx FlashUtil11a_ActiveX.exe FlashUtil11a_Plugin.exe
10.3.183.15 Flash10za.ocx FlashUtil10za_ActiveX.exe FlashUtil10za_Plugin.exe
10.3.183.11 Flash10y.ocx FlashUtil10y_ActiveX.exe FlashUtil10y_Plugin.exe
10.3.183.10 Flash10x.ocx FlashUtil10x_ActiveX.exe FlashUtil10x_Plugin.exe
10.3.183.7 Flash10w.ocx FlashUtil10w_ActiveX.exe FlashUtil10w_Plugin.exe
10.3.183.5 Flash10v.ocx FlashUtil10v_ActiveX.exe FlashUtil10v_Plugin.exe
10.3.181.34 Flash10u.ocx FlashUtil10u_ActiveX.exe FlashUtil10u_Plugin.exe
10.3.181.26 Flash10t.ocx FlashUtil10t_ActiveX.exe FlashUtil10t_Plugin.exe
10.3.181.23 Flash10s.ocx FlashUtil10s_ActiveX.exe
10.3.181.22 n/a FlashUtil10s_Plugin.exe
10.3.181.16 Flash10r.ocx FlashUtil10r_ActiveX.exe FlashUtil10r_Plugin.exe
10.3.181.14 Flash10q.ocx FlashUtil10q_ActiveX.exe FlashUtil10q_Plugin.exe
10.2.159.1 Flash10p.ocx FlashUtil10p_ActiveX.exe FlashUtil10p_Plugin.exe
10.2.153.1 Flash10o.ocx FlashUtil10o_ActiveX.exe FlashUtil10o_Plugin.exe
10.2.152.32 Flash10n.ocx FlashUtil10n_ActiveX.exe FlashUtil10n_Plugin.exe
10.2.152.26 Flash10m.ocx FlashUtil10m_ActiveX.exe FlashUtil10m_Plugin.exe
10.1.102.64 Flash10l.ocx FlashUtil10l_ActiveX.exe FlashUtil10l_Plugin.exe
10.1.85.3 Flash10k.ocx FlashUtil10k_ActiveX.exe FlashUtil10k_Plugin.exe
10.1.82.76 Flash10i.ocx FlashUtil10i_ActiveX.exe FlashUtil10i_Plugin.exe
10.1.53.64 Flash10h.ocx FlashUtil10h_ActiveX.exe FlashUtil10h_Plugin.exe

Adobe Flash Player 10 for Internet Explorer with Win64bit check

Download installer file here.

<package 
    id="flashplayer_ie"
    name="Adobe Flash Player 10 for IE"
    revision="1004502"
    reboot="false"
    priority="10">


    <check type="uninstall" condition="exists" path="Adobe Flash Player 10 ActiveX" />
        
    <check type="logical" condition="or">
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash10e.ocx" value="10.0.45.2"/>
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash10e.ocx" value="10.0.45.2"/>
    </check>

    <install cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
    <install cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /S' />

    <upgrade cmd='taskkill /f /im iexplore.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>    
    <upgrade cmd='%SOFTWARE%\flash\install_flash_player_ax.exe /S' />
    
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" /S'/>
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_activeX.exe" /S'/>
</package>

Adobe Flash Player 10 for Firefox/Opera with Win64bit check

Download installer file here.

<package 
     id="flashplayer_mozilla"
     name="Adobe Flash Player 10 for Mozilla/Opera"
     revision="1004502"
     reboot="false"
     priority="10">

    <check type="uninstall" condition="exists" path="Adobe Flash Player 10 Plugin" />

    <check type="logical" condition="or">
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32.dll" value="10.0.45.2" />
        <check type="file" condition="versionequalto" path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32.dll" value="10.0.45.2" />
    </check>
        

    <install cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></install>
    <install cmd='%SOFTWARE%\flash\install_flash_player.exe /S' />
    
    <upgrade cmd='taskkill /f /im firefox.exe'><exit code='0' /><exit code='1' /><exit code='128' /></upgrade>
    <upgrade cmd='%SOFTWARE%\flash\install_flash_player.exe /S' />
        
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_plugin.exe" /S'/>
    <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\uninstall_plugin.exe" /S'/>
</package>

Adobe Flash Player 9.0.246.0 for Firefox

Installer packaged as an executable, installs as a plugin. Sometimes it is upgraded only on the second run of WPKG, it must be a timing issue between installing over previous version and checking conditions.

<package id="flashplayerfirefox" name="Adobe Flash Player for Firefox" revision="1" reboot="false" priority="0">
  <depends package-id="firefox"/>
  <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.246.0"/>
  <install cmd='%SOFTWARE%\Flash\install_flash_player.exe /S' />
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player.exe /S' />
  <remove cmd='%WINDIR%\system32\Macromed\Flash\uninstall_plugin.exe /S'/>
</package>

If you use WPKG whilst logged in then it's good to kill the Firefox application process before installing Flash Player, since the installer won't work with the browser running. To do this add this to the WPKG code:

<install cmd="taskkill /F /IM Firefox.exe">
            <exit code="0" />
            <exit code="128" />
</install>

And of course:

<upgrade cmd="taskkill /F /IM Firefox.exe">
            <exit code="0" />
            <exit code="128" />
</upgrade>

Adobe Flash Player 9.0.246.0 for Internet Explorer

Presumably the Internet Explorer version has the same installation/removal/upgrade syntax as the plugin version above, but the following code has not been tested.

<package id="flashplayeractivex" name="ActiveX Flash Player" revision="20090730" reboot="false" priority="0">
  <check type="file" condition="versionequalto" path="%SYSTEMROOT%\system32\Macromed\Flash\Flash9c.ocx" value="9.0.246.0"/>
  <install cmd='%SOFTWARE%\Flash\install_flash_player_ax.exe /S' />
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player_ax.exe /S' />
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\uninstall_activeX.exe" /S'/>
</package>

External Links