When you add the Express Install script to your wrapper, one of the following results occur when a client requests that wrapper:
Users who do not update the Flash Player version by using Express Install generally fall into the following categories:
Browser with disabled scripting If the browser disables JavaScript, the browser executes content in the <noscript> tag of the wrapper. The version detection logic from the index.template.html and AC_OETags.js files is not interpreted when your wrapper is loaded into a browser, nor is Express Install usable.
Browser with no Flash Player installed If the browser has no Flash Player installed but JavaScript is enabled, the browser executes the alternate content area in the <script> tag of the wrapper.
Browser with Flash Player version earlier than 6.0.65 If Flash Player is not new enough to run the Express Install SWF file (playerProductInstall.swf), but JavaScript is enabled, the browser executes the alternate content area in the <script> tag of the wrapper.
User refuses Flash Player installation or upgrade If the user declines to install Flash Player or to upgrade their version of Flash Player, the browser executes the alternate content area in the <script> tag of the wrapper. It is up to you to determine whether to provide content in HTML format or some other format that the browser can render without using Flash Player.
In situations where the browser executes alternate content, you can use the <object> and <embed> tags to embed your Flex application and provide an upgrade and installation path for players that are old or missing.
The <object> tag's codebase property is used to enforce the player versioning for a Microsoft Internet Explorer browser. The tag adds support for basic player version detection and installation. The codebase property defines the minimum version specified at the end of the CAB file's location (for example, #version=9,0,0). If the browser requests this page with a player version older than that, the user is prompted to upgrade their player. This installation can occur without the user having to restart the browser.
The <embed> tag's pluginspage property is used for Firefox, Netscape 8, and Mozilla-based browsers. If there is no plug-in installed, the browser displays a plug-in icon and the text "Click here to get the plug-in." When a user clicks the icon, they are directed to an appropriate location, depending on the type of browser being used, where they can download and install the latest version of Flash Player. The pluginspage property does not enforce a required version of the plug-in.
Flash Player is available from the Firefox Plug-in Finder Service. This means that if the Firefox browser does not have the player installed when it encounters an <embed> tag, it guides the user through the process of downloading and installing Flash Player through the Finder Service.
Consider adding a note to users of Firefox, Netscape 8, and Mozilla-based browsers that if they have scripting disabled, they should upgrade their Flash Players to version 9 before continuing. You can put this in the <noscript> block to ensure that only users with scripting disabled get this message.
These upgrade processes result in a different upgrade experience than the experience of the user who upgrades by using Express Install. Express Install provides a clean installation and returns the user to the original page. These alternative paths require more steps and in some cases do not provide users with a return path to the original application.
You can do basic version detection without using Express Install. For an example of this, see the files in the /templates/client-side-detection and /templates/client-side-detection-with-history directories.
Other techniques for upgrading Flash Player without Express Install are described in the Flash Player Detection Kit. These include using server-side logic and writing a custom SWF file to perform version detection and installation. For more information, see the Detection Kit documentation at www.adobe.com/go/fp_detectionkit.