Difference between revisions of "Flash Player"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(Version 9.0.47.0)
m (Adobe Flash Player 32)
 
(222 intermediate revisions by 89 users not shown)
Line 1: Line 1:
== Adobe Flash Player 9.0.47.0 for Firefox ==
+
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.
  
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.
+
==Documentation for all versions==
  
<package id="flash9ff" name="Adobe Flash Player for Firefox" revision="1" reboot="false" priority="0">
+
Adobe Flash Platform Runtime Releases - Announcements and release notes for Adobe AIR and Adobe Flash Player: http://blogs.adobe.com/flashruntimereleases/
  <depends package-id="firefox"/>
+
(Last update 2011!?)
  <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.47.0"/>
+
  <install cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
  <remove cmd='%WINDIR%\system32\Macromed\Flash\uninstall_plugin.exe /S'/>
+
</package>
+
  
 +
Security bulletins and advisories: http://www.adobe.com/support/security/#flashplayer
  
== Adobe Flash Player 9.0.47.0 for Internet Explorer ==
+
==Download Flash Player==
  
Installer packaged as .msi, installs as an ActiveX.
+
Uninstaller: http://helpx.adobe.com/flash-player/kb/uninstall-flash-player-windows.html
  
  <package id="flash9ie" name="Adobe Flash Player for Internet Explorer" revision="1" reboot="false" priority="0">
+
Installer: https://www.adobe.com/products/flashplayer/distribution5.html
  <check type="logical" condition="and">
+
 
     <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9d.ocx" value="9.0.47.0"/>
+
==Windows 8 & 8.1==
     <check type="uninstall" condition="exists" path="Adobe Flash Player 9 ActiveX"/>
+
 
 +
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">
 +
<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>
 +
</source>
 +
 
 +
==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">
 +
 
 +
<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>
 +
</source>
 +
 
 +
== 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 [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.
 +
 
 +
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:
 +
<source lang="dos">
 +
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
 +
)
 +
</source>
 +
and append line
 +
<source lang="xml">
 +
<install cmd='cmd /c "%PKG_SOURCE%\emet.cmd" &gt;nul ' />
 +
</source>
 +
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 "[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
 +
 
 +
This configuration can be performed by WPKG using the following:
 +
 
 +
<source lang="xml">
 +
<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>
 +
</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.
 +
 
 +
===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 <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">
 +
 
 +
<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>
 +
</source>
 +
 
 +
=== 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 ====
 +
 
 +
<source lang="xml">
 +
<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>
 
   </check>
   <install cmd='msiexec /q /i %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
 
     <exit code="0" />
+
   <install cmd='taskkill /f /im iexplore.exe'>
     <exit code="3010" reboot="true" />
+
     <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="0" />
+
   <install cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall activex'>
     <exit code="3010" reboot="true" />
+
    <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>
  <remove cmd='MsiExec.exe /qn /X{786547F9-59BB-4FA3-B2D8-327FF1F14870}'/>
 
</package>
 
  
 +
  <upgrade cmd='%SOFTWARE%\flash\uninstall_flash_player_32bit.exe -uninstall activex'>
 +
    <exit code='any' />
 +
  </upgrade>
  
== Older versions ==
+
  <upgrade cmd='%SOFTWARE%\flash\install_flash_player_11_active_x_32bit.exe -install' />
  
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:
+
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
<pre>
+
<check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\NPSWF32.dll" value="9.0.45.0"/>
+
  
<check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9c.ocx" value="9.0.45.0"/>
+
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil%shortversion%_ActiveX.exe" /uninstall'/>
</pre>
+
</package>
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 :)
+
</source>
  
<package
+
==== Firefox and Other Browsers / Plugin version ====
  id="flashplayerfirefox"
+
 
  name="Flash Player Firefox"
+
<source lang="xml">
  revision="90160"
+
<package  
  reboot="false"
+
  id="flashplayer_mozilla"
  priority="0">
+
  name="Adobe Flash Player for Mozilla/Opera"
+
  revision="%version%"
  <depends package-id="firefox"/>
+
  reboot="false"
+
  priority="10">
  <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' />
+
  <variable name="version" value="11.1.102.63" />
  <upgrade cmd='%SOFTWARE%\Flash\install_flash_player /S' />
+
  <variable name="shortversion" value="11g" />
</package>
+
 
 +
  <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>
 +
</source>
 +
 
 +
==== 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 =====
  
<package
+
<source lang="xml">
  id="flashplayerie"
+
<?xml version="1.0" encoding="UTF-8"?>
  name="Flash Player IE"
+
<packages
  revision="90160"
+
        xmlns:xsi="http://www.wpkg.org/packages"
  reboot="false"
+
        xsi:noNamespaceSchemaLocation="../xsd/packages.xsd" >
  priority="0">
+
 
   
 
   
  <check type="logical" condition="and">
+
    <package id="AdobeFlashPlayer"
    <check type="file" condition="versiongreaterorequal" path="%WINDIR%\system32\Macromed\Flash\Flash9.ocx" value="9.0.16.0"/>
+
            name="Adobe Flash Player"
    <check type="uninstall" condition="exists" path="Adobe Flash Player 9 ActiveX"/>
+
            revision="%PKG_VERSION%"
  </check>
+
            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" />
 
   
 
   
  <install cmd='msiexec /q /i  %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"              value="%PKG_VERSION%" />
    <exit code="0" />
+
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"              value="%PKG_VERSION%" />
     <exit code="3010" reboot="true" />
+
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%"        value="%PKG_VERSION%" />
  </install>
+
        <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" />
 
   
 
   
  <upgrade cmd='msiexec /q /i  %SOFTWARE%\Flash\install_flash_player_active_x.msi'>
+
        <install include="remove" />
    <exit code="0" />
+
        <install architecture="x86" cmd='"%PKG_SOURCE%\install_flash_player_11_active_x_32bit.exe" /install ' />
    <exit code="3010" reboot="true" />
+
        <install architecture="x86" cmd='"%PKG_SOURCE%\install_flash_player_11_plugin_32bit.exe" /install ' />
  </upgrade>
+
        <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 ' />
 
   
 
   
  <remove cmd='MsiExec.exe /q /X{BB65C393-C76E-4F06-9B0C-2124AA8AF97B}'/>
+
        <upgrade include="install" />
</package>
+
 +
        <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">
 +
<?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%" />
  
This is a silent installer for Adobe Flash Player.
+
        <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>
  
There are versions of Adobe Flash Player for Internet Explorer and for [[Firefox|Mozilla Firefox]].
+
        <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 ' />
  
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).
+
        <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 ' />
  
'''This is an Adobe Flash Player for Mozilla Firefox installer:'''
+
        <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 ' />
  
  <package
+
        <remove cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == x86 "%PKG_SOURCE%\uninstall_flash_player_32bit.exe" -uninstall' ><exit code="any" /></remove>
   id="flashplayerfirefox"
+
        <remove cmd='%ComSpec% /c if %PROCESSOR_ARCHITECTURE% == AMD64 "%PKG_SOURCE%\uninstall_flash_player_64bit.exe" -uninstall' ><exit code="any" /></remove>
   name="Flash Player Firefox"
+
</package>
   revision="1"
+
</source>
 +
 
 +
 
 +
=== 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">
 +
<package  
 +
   id="flashplayer_ie"
 +
   name="Adobe Flash Player for IE"
 +
   revision="%version%"
 
   reboot="false"
 
   reboot="false"
   priority="0">
+
   priority="10">
+
  <check type="file" condition="exists" path="%PROGRAMFILES%\Mozilla Firefox\plugins\NPSWF32.dll" />
+
+
  <install cmd='%SOFTWARE%\Flash_Firefox\flashplayer7installer.exe /S' />
+
+
</package>
+
  
 +
  <variable name="version" value="10.3.183.10" />
 +
  <variable name="shortversion" value="10x" />
  
'''This is an Adobe Flash Player for Internet Explorer installer:'''
+
  <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>
  
<package
+
  <install cmd='%SOFTWARE%\flash\uninstall_flash_player.exe -uninstall'><exit code='any' /></install>
   id="flashplayerie"
+
  <!-- use "/s" or "/silent" as silent-switch if using an older uninstaller-->
   name="Flash Player IE"
+
 
   revision="1"
+
  <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>
 +
</source>
 +
 
 +
==== WPKG installer for Firefox/Opera with Win64bit check ====
 +
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe here].
 +
 
 +
Note that where '/S' was used for silent installation with previous versions, '/install' is required with version 10.1.
 +
 
 +
<source lang="xml">
 +
<package  
 +
   id="flashplayer_mozilla"
 +
   name="Adobe Flash Player for Mozilla/Opera"
 +
   revision="%version%"
 
   reboot="false"
 
   reboot="false"
   priority="0">
+
   priority="10">
   
+
 
  <check type="file" condition="exists" path="%WINDIR%\system32\Macromed\Flash\Flash.ocx" />
+
  <variable name="version" value="10.3.183.10" />
+
  <variable name="shortversion" value="10x" />
   <install cmd='%SOFTWARE%\Flash_IE\flashplayer7_winax.exe /Q' />
+
       
+
  <check type="logical" condition="or">
</package>
+
    <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>
 +
 
 +
====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
 +
|}
 +
 
 +
=== 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">
 +
<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>
 +
</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" />
 +
 
 +
    <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>
 +
</source>
 +
 
 +
=== 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.
 +
 
 +
<source lang="xml">
 +
<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>
 +
</source>
 +
 
 +
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">
 +
<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>
 +
</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: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