Possible issue with Media Center hosted HTML applications on 64-bit Windows Vista

A possible problem currently exists for hosted HTML applications in Windows Media Center for Windows Vista on 64-bit versions of Windows Vista.  Windows Media Center hosts applications in a 64-bit process, and that 64-bit process currently only has the ability to host other 64-bit processes and ActiveX controls.

A customer posted this item on his blog recently and sent me a question asking for more information about this scenario.

This issue primarily affects hosted HTML applications because they often host the Adobe Flash ActiveX control.  As of the time that I am writing this blog post, there is not a 64-bit version of the Flash player available.  When a hosted HTML application tries to check for the existence of the Flash player on a 64-bit OS, it will search in the 64-bit registry because Windows Media Center hosts applications in a 64-bit process.  The hosted HTML application will not find the Flash player installed, and most applications will then prompt the user to install the Flash player.  If a user uses the default Internet Explorer link in the Windows Start menu, it will launch the 32-bit version of Internet Explorer and the user will be able to use it to install the 32-bit version of Flash.  Then, when they return to Windows Media Center and launch the hosted HTML application again, it will continue to fail to locate Flash because it is looking for a 64-bit version not finding it because only a 32-bit version has been installed.

The Windows Media Center team is currently working on a feature that will allow applications to host both 32-bit and 64-bit processes and ActiveX controls on a 64-bit OS.  The team is planning to release this feature as a Windows Vista hotfix, but the timeframe for this release is not yet known.

In the meantime, there is not a workaround that will allow Windows Media Center applications that require 32-bit ActiveX controls such as the Flash player to work correctly on 64-bit versions of Windows Vista.

Please note that it is possible to use other Windows Media Center application development technologies such as Media Center Markup Language (MCML) or hosted .NET Framework 3.0 XBAPs instead of relying on hosted HTML.  There will be some up-front cost to learn the new technology and implement your application using it, but in the long run I think you will get a lot of benefit from using these more powerful Windows Media Center development options.  You can find more information about Windows Media Center development options in the Windows Media Center SDK for Windows Vista.