Difference between revisions of "Flash Player"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
m (Bump version from 11.9.900.152 to 11.9.900.170)
(Bit of trimming done. Moved previous versions to old. Edited script for major version 12 and added variables for different versions of Activex and plugin.)
Line 1: Line 1:
 
This is a silent installer for Adobe Flash Player.
 
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.
 
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==
 
==Documentation for all versions==
Line 8: Line 7:
  
 
Security bulletins and advisories: http://www.adobe.com/support/security/#flashplayer
 
Security bulletins and advisories: http://www.adobe.com/support/security/#flashplayer
 
  
 
==Download Flash Player==
 
==Download Flash Player==
* Installer:
 
** http://www.adobe.com/special/products/flashplayer/fp_distribution3.html
 
  
* Uninstaller:
+
Uninstaller: http://helpx.adobe.com/flash-player/kb/uninstall-flash-player-windows.html
** [http://download.macromedia.com/get/flashplayer/current/support/uninstall_flash_player.exe Cleanup Tool (64 and 32-bit)]
+
  
==Adobe Flash Player 11.6.x, 11.7.x, 11.8.x and 11.9.x ==
+
Installer: http://www.adobe.com/special/products/flashplayer/fp_distribution3.html
* Uninstaller Download: http://helpx.adobe.com/flash-player/kb/uninstall-flash-player-windows.html
+
 
* Installer Download: http://www.adobe.com/special/products/flashplayer/fp_distribution3.html
+
==Adobe Flash Player 12 and 11 (Since version 11.2)==
  
 
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.
 
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.
  
==== This package requires wpkg.js 1.2.1-RC20 or higher ====
+
==== Package for wpkg.js 1.2.1-RC20 or higher ====
  
 
<source lang="xml">
 
<source lang="xml">
Line 33: Line 28:
 
priority="10">         
 
priority="10">         
  
<variable name="PKG_VERSION"          value="11.9.900.170" /> <!-- use "." separator -->
+
        <variable name="PKG_VERSION"                  value="12.0.0.38" /> <!-- version of wpkg package -->
<variable name="shortversion"        value="11_9_900_170" /> <!-- use "_" separator -->
+
<variable name="PKG_VERSION_ACTIVEX"          value="12.0.0.38" /> <!-- use "." separator -->
<variable name="PKG_SOURCE"           value="%SOFTWARE%\Adobe\FlashPlayer\%PKG_VERSION%" />
+
        <variable name="PKG_VERSION_PLUGIN"          value="12.0.0.38" />  
 +
<variable name="shortversion_activex"        value="12_0_0_43" /> <!-- use "_" separator -->
 +
        <variable name="shortversion_plugin"         value="12_0_0_43" />
 +
        <variable name="PKG_MAJ_VERSION"        value="12" />
  
<variable name="PKG_DESTINATION"      value="%SystemRoot%\System32\Macromed\Flash"/>
+
        <variable name="PKG_SOURCE"          value="%SOFTWARE%\Adobe\FlashPlayer\%PKG_VERSION%" /> <!-- edit -->
<variable name="PKG_DESTINATION"      value="%SystemRoot%\SysWOW64\Macromed\Flash" architecture="x64"/>
+
<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_DESTINATION_X64"  value="%SystemRoot%\System32\Macromed\Flash"/>
<variable name="PKG_FILE_ACTIVEX"    value="Flash32_%shortversion%.ocx" />
+
<variable name="PKG_FILE_ACTIVEX"    value="Flash32_%shortversion_activex%.ocx" />
<variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%shortversion%.dll" />
+
<variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%shortversion_plugin%.dll" />
<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%shortversion%.ocx" />
+
<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%shortversion_activex%.ocx" />
<variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%shortversion%.dll" />
+
<variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%shortversion_plugin%.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%"           
+
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"              value="%PKG_VERSION_ACTIVEX%" />
 
+
<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"                value="%PKG_VERSION_PLUGIN%" />
value="%PKG_VERSION%" />
+
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%"  
+
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%"        value="%PKG_VERSION_ACTIVEX%" />
 
+
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%"          value="%PKG_VERSION_PLUGIN%" />
value="%PKG_VERSION%" architecture="x64" />
+
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%PKG_VERSION_ACTIVEX%" architecture="x64" />
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%"   
+
<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%"  value="%PKG_VERSION_PLUGIN%" architecture="x64" />
 
+
value="%PKG_VERSION%" architecture="x64" />
+
 
   
 
   
<install include="remove" />
+
<install include="remove" />
<install cmd='"%PKG_SOURCE%\install_flash_player_11_active_x.exe" /install ' />
+
<install cmd='"%PKG_SOURCE%\install_flash_player_%PKG_MAJ_VERSION%_active_x.exe" /install ' />
<install cmd='"%PKG_SOURCE%\install_flash_player_11_plugin.exe" /install ' />
+
<install cmd='"%PKG_SOURCE%\install_flash_player_%PKG_MAJ_VERSION%_plugin.exe" /install ' />
 
   
 
   
 
<upgrade include="install" />
 
<upgrade include="install" />
Line 101: Line 94:
 
to your flash install script.
 
to your flash install script.
  
==Adobe Flash Player 11.3.300.268 ==
+
== Disable Automatic Update dialog in Adobe Flash Player ==
  
* Download the installer (works for 32 and 64 bit): http://helpx.adobe.com/flash-player/kb/uninstall-flash-player-windows.html
+
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:
* Package works with winxpsp3 and win 7 64 bit, other constellations not tested by me
+
  
 +
* 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">
 
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
+
<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>
  
<packages>
+
<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\system32\Macromed\Flash\mms.cfg"' >
+
  <exit code="0" />
+
  <exit code="1" /> <!-- if file does not exist -->
<package
+
</remove>
            id="flash"
+
<remove cmd='%COMSPEC% /c del /s /q "%WINDIR%\SysWOW64\Macromed\Flash\mms.cfg"' >
            name="Adobe Flash Player"
+
  <exit code="0" />
            revision="14"
+
  <exit code="1" /> <!-- if file does not exist -->
            reboot="false"
+
</remove>
            priority="10">
+
+
        <variable name="version" value="11.3.300.268" />
+
 
+
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*" value="%version%" />
+
        <check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"  value="%version%" />
+
 
+
+
        <install include="remove" />
+
        <install cmd='"%Software%\Flash\%version%\install_flash_player_11_active_x.exe" /install' />
+
        <install cmd='"%Software%\Flash\%version%\install_flash_player_11_plugin.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 cmd='"%Software%\Flash\%version%\uninstall_flash_player.exe" -uninstall' />
+
   
+
 
+
    </package>
+
+
</packages>
+
 
</source>
 
</source>
  
==Adobe Flash Player 11.3==
+
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.
  
=== Version mismatch ===
+
This file will prevent current and older versions of Flash from auto-updating.
  
As of late June, Adobe's ActiveX and Plugin MSIs have different minor versions; the MSIE package ends in .257 and the Firefox version ends in .262. The reason for this is an out-of-cycle FF patch to fix an urgent isse [http://techdows.com/2012/06/update-for-flash-player-11-3-fixes-crashes-in-firefox.html].
+
== Older Versions ==
 
+
The solution for this is probably to split it into two sub-packages and set up a depends to flash-plugin-combined.
+
 
+
Starting with Flash Player 11.3, Adobe have combined x86 and x64 in to the same installer.
+
 
+
<source lang="xml">
+
 
+
<packages>
+
 
+
 
+
    <package id="AdobeFlashPlayer"
+
            name="Adobe Flash Player"
+
            revision="%VERSION%"
+
            reboot="false"
+
            priority="10">
+
 
+
        <variable name="VERSION"              value="11.3.300.262" />
+
        <variable name="PKG_VERSION"          value="11.3.300.257" />
+
        <variable name="plugin_version"      value="11.3.300.262" />
+
        <variable name="shortversion"        value="11_3_300_257" />
+
        <variable name="plugin_shortversion"  value="11_3_300_262" />
+
 
+
        <variable name="PKG_SOURCE"          value="%SOFTWARE%\Flash\%PKG_VERSION%" />
+
        <variable name="plugin_SOURCE"        value="%SOFTWARE%\Flash\%plugin_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="Flash32_%shortversion%.ocx" />
+
        <variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%plugin_shortversion%.dll" />
+
        <variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%shortversion%.ocx" />
+
        <variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%plugin_shortversion%.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="%plugin_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="%plugin_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="%plugin_version%" architecture="x64" />
+
+
        <install include="remove" />
+
        <install cmd='"%PKG_SOURCE%\install_flash_player_11_active_x.exe" /install ' />
+
        <install cmd='"%plugin_SOURCE%\install_flash_player_11_plugin.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>
+
 
+
</source>
+
 
+
== Adobe Flash Player 11.2 ==
+
 
+
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.2.202.235" />
+
  <variable name="shortversion" value="11_2_202_235" />
+
 
+
  <check type="logical" condition="or">
+
    <check
+
      type="file"
+
      condition="versionequalto"
+
      path="%SYSTEMROOT%\system32\Macromed\Flash\Flash32_%shortversion%.ocx"
+
      value="%version%" />
+
 
+
    <check
+
      type="file"
+
      condition="versionequalto"
+
      path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\Flash32_%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\FlashUtil32_%shortversion%_ActiveX.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil32_%shortversion%_ActiveX.exe" /uninstall'/>
+
 
+
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil32_%shortversion%_ActiveX.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil32_%shortversion%_ActiveX.exe" /uninstall'/>   
+
</package>
+
</source>
+
 
+
=== Firefox and Other Browsers / Plugin version ===
+
 
+
<source lang="xml">
+
<package
+
  id="flashplayer_mozilla"
+
  name="Adobe Flash Player for Mozilla/Opera"
+
  revision="%version%"
+
  reboot="false"
+
  priority="10">
+
 
+
  <variable name="version" value="11.2.202.235" />
+
  <variable name="shortversion" value="11_2_202_235" />
+
 
+
  <check type="logical" condition="or">
+
    <check type="file" condition="versionequalto"
+
      path="%SYSTEMROOT%\system32\Macromed\Flash\NPSWF32_%shortversion%.dll" value="%version%" />
+
 
+
    <check type="file" condition="versionequalto"
+
      path="%SYSTEMROOT%\SysWOW64\Macromed\Flash\NPSWF32_%shortversion%.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 include="install" />
+
 
+
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil32_%shortversion%_Plugin.exe" "%SYSTEMROOT%\system32\Macromed\Flash\FlashUtil32_%shortversion%_Plugin.exe" /uninstall'/>
+
 
+
  <remove cmd='%COMSPEC% /C if exist "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil32_%shortversion%_Plugin.exe" "%SYSTEMROOT%\SysWOW64\Macromed\Flash\FlashUtil32_%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 ====
+
 
+
<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.2.202.233" />
+
        <variable name="shortversion"        value="11_2_202_233" />
+
        <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="Flash32_%shortversion%.ocx" />
+
        <variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%shortversion%.dll" />
+
        <variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%shortversion%.ocx" />
+
        <variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%shortversion%.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">
+
<?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>
+
</source>
+
  
== Adobe Flash Player 11.1 ==
+
=== Adobe Flash Player 11.1 ===
  
 
Starting with Flash Player 11 there is a separate download available for 64-bit Windows.
 
Starting with Flash Player 11 there is a separate download available for 64-bit Windows.
Line 433: Line 143:
 
The 64-bit installer installs the 32-bit and 64-bit executables.
 
The 64-bit installer installs the 32-bit and 64-bit executables.
  
=== Internet Explorer / ActiveX control version ===
+
==== Internet Explorer / ActiveX control version ====
  
 
<source lang="xml">
 
<source lang="xml">
Line 490: Line 200:
 
</source>
 
</source>
  
=== Firefox and Other Browsers / Plugin version ===
+
==== Firefox and Other Browsers / Plugin version ====
  
 
<source lang="xml">
 
<source lang="xml">
Line 545: Line 255:
 
</source>
 
</source>
  
=== Combined Internet Explorer / ActiveX control version and Firefox and Other Browsers / Plugin version, and 32-bit and 64-bit versions ===
+
==== 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 ====
+
===== This package requires wpkg.js 1.2.1-RC20 or higher =====
  
 
<source lang="xml">
 
<source lang="xml">
Line 605: Line 315:
 
</source>
 
</source>
  
==== This package works with WPKG 1.2.0 ====
+
===== This package works with WPKG 1.2.0 =====
  
 
<source lang="xml">
 
<source lang="xml">
Line 640: Line 350:
  
  
== Adobe Flash Player 10  ==
+
=== Adobe Flash Player 10  ===
  
 
Flash Player 10 is still supported with security updates, the most recent being 10.3.183.11.
 
Flash Player 10 is still supported with security updates, the most recent being 10.3.183.11.
Line 648: Line 358:
 
10.3 changelog: http://kb2.adobe.com/cps/901/cpsid_90194.html#main_authoring
 
10.3 changelog: http://kb2.adobe.com/cps/901/cpsid_90194.html#main_authoring
  
=== WPKG installer for Internet Explorer with Win64bit check ===
+
==== WPKG installer for Internet Explorer with Win64bit check ====
 
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player_ax.exe here].
 
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]
 
[http://download.macromedia.com/pub/flashplayer/current/uninstall_flash_player.exe Download Uninstall Flash Player]
Line 687: Line 397:
 
</source>
 
</source>
  
=== WPKG installer for Firefox/Opera with Win64bit check ===
+
==== WPKG installer for Firefox/Opera with Win64bit check ====
 
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe here].
 
Download installer file [http://fpdownload.adobe.com/get/flashplayer/current/install_flash_player.exe here].
  
Line 719: Line 429:
 
</source>
 
</source>
  
===Filenames===
+
====Filenames====
 
Note the different filenames used between different versions.
 
Note the different filenames used between different versions.
  
Line 788: Line 498:
 
| Flash10h.ocx  || FlashUtil10h_ActiveX.exe  || FlashUtil10h_Plugin.exe  
 
| Flash10h.ocx  || FlashUtil10h_ActiveX.exe  || FlashUtil10h_Plugin.exe  
 
|}
 
|}
 
== Disable Automatic Update dialog in Adobe Flash Player ==
 
 
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.
 
 
== Older Versions ==
 
  
 
=== Adobe Flash Player 10 for Internet Explorer with Win64bit check===
 
=== Adobe Flash Player 10 for Internet Explorer with Win64bit check===

Revision as of 11:15, 16 January 2014

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/

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: http://www.adobe.com/special/products/flashplayer/fp_distribution3.html

Adobe Flash Player 12 and 11 (Since version 11.2)

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.

Package for wpkg.js 1.2.1-RC20 or higher

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

        <variable name="PKG_VERSION"                  value="12.0.0.38" /> <!-- version of wpkg package -->
	<variable name="PKG_VERSION_ACTIVEX"          value="12.0.0.38" /> <!-- use "." separator -->
        <variable name="PKG_VERSION_PLUGIN"           value="12.0.0.38" /> 
	<variable name="shortversion_activex"         value="12_0_0_43" /> <!-- use "_" separator -->
        <variable name="shortversion_plugin"          value="12_0_0_43" />
        <variable name="PKG_MAJ_VERSION"         value="12" />

        <variable name="PKG_SOURCE"           value="%SOFTWARE%\Adobe\FlashPlayer\%PKG_VERSION%" /> <!-- edit -->
 	<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_%shortversion_activex%.ocx" />
	<variable name="PKG_FILE_PLUGIN"      value="NPSWF32_%shortversion_plugin%.dll" />
	<variable name="PKG_FILE_ACTIVEX_X64" value="Flash64_%shortversion_activex%.ocx" />
	<variable name="PKG_FILE_PLUGIN_X64"  value="NPSWF64_%shortversion_plugin%.dll" />

        
	<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ ActiveX.*"               value="%PKG_VERSION_ACTIVEX%" />
	<check type="uninstall" condition="versiongreaterorequal" path="Adobe Flash Player .+ Plugin.*"                value="%PKG_VERSION_PLUGIN%" />
	
        <check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_ACTIVEX%"         value="%PKG_VERSION_ACTIVEX%" />
	<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION%\%PKG_FILE_PLUGIN%"          value="%PKG_VERSION_PLUGIN%" />
	<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_ACTIVEX_X64%" value="%PKG_VERSION_ACTIVEX%" architecture="x64" />
	<check type="file"      condition="versiongreaterorequal" path="%PKG_DESTINATION_X64%\%PKG_FILE_PLUGIN_X64%"  value="%PKG_VERSION_PLUGIN%" architecture="x64" />
 
<install include="remove" />
	<install cmd='"%PKG_SOURCE%\install_flash_player_%PKG_MAJ_VERSION%_active_x.exe" /install ' />
	<install cmd='"%PKG_SOURCE%\install_flash_player_%PKG_MAJ_VERSION%_plugin.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 cmd='"%PKG_SOURCE%\uninstall_flash_player.exe" -uninstall' >
		<exit code="any" />
	</remove>
</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 does not appear to be necessary or 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

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.

Older Versions

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