Adding strips and tiles to the Windows Media Center Start menu in Windows Vista

As those of you who have seen Windows Media Center in Windows Vista already know, there has been a redesign of the Start menu. Windows Media Center now has the concept of strips and tiles on the Start menu as well as horizontal and vertical navigation.

A strip is a top-level menu on the Windows Media Center Start menu that can be reached by scrolling vertically. Examples include Music, Pictures + Videos, etc. A tile is an item in a strip. Each tile invokes a single action or entry point within Windows Media Center.

With the redesign of the Start menu, Windows Media Center for Windows Vista also includes a new way of registering applications and entry points to appear on the Start menu. It is possible to add up to 2 new strips to the Start menu using existing extensibility mechanisms in Windows Media Center, and each of those 2 strips can contain up to 5 tiles.

The following steps provide a high-level overview of how to create a custom strip on the Windows Media Center Start menu in Windows Vista:

  1. Create an XML file that can be used by the RegisterApplication or RegisterMceApp.exe to register an application and one or more entry points
  2. Associate the entry points that you want to appear in the custom strip on the Start menu with a specific category name of your choosing
  3. Register the application and entry points using RegisterApplication or RegisterMceApp.exe
  4. Create a registry sub-key named HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Media Center\Start Menu\Applications\{APPLICATION GUID} where APPLICATION GUID is the one provided in the XML file in step 1 above
  5. Create the following values under this sub-key:
    Category (REG_SZ) - the name of the category name that you used in step 2 above
    OnStartMenu (REG_SZ) - set this to true
    Title (REG_SZ) - the display name for the custom strip on the Start menu

The above steps are fairly abstract, so I have posted a set of example files on my file server to illustrate how to create custom strips. The files in this ZIP package will allow you to register 2 custom strips with 5 tiles each on the Windows Media Center Start menu in Windows Vista. To accomplish this, use these steps:

  1. Download the ZIP file and extract the contents to a Windows Vista Home Premium or Ultimate system
  2. Click on the Start menu, choose All Programs, then Accessories
  3. Right-click on Command Prompt and choose Run as administrator, then click Allow
  4. Run %windir%\ehome\registermceapp.exe TestApp1.xml to register the first application and 5 entry points
  5. Run %windir%\ehome\registermceapp.exe TestApp2.xml to register the second application and 5 entry points
  6. Run regedit.exe /s TestApp1.reg to add the first application to the Windows Media Center Start menu
  7. Run regedit.exe /s TestApp2.reg to add the second application to the Windows Media Center Start menu

To remove these applications from the Windows Media Center Start menu, you will need to use these steps:

  1. Click on the Start menu, choose All Programs, then Accessories
  2. Right-click on Command Prompt and choose Run as administrator, then click Allow
  3. Run %windir%\ehome\registermceapp.exe /u TestApp1.xml
  4. Run %windir%\ehome\registermceapp.exe /u TestApp2.xml
  5. Run regedit.exe and remove the sub-key named HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Media Center\Start Menu\Applications

Please note that I have only provided these XML and REG files as an example. They are not real applications. Each tile that is added to the 2 custom strips on the Start menu in this scenario launches the same Windows Media Center Presentation Layer Web Application for simplicity's sake. If you want to create your own custom strip and tiles, you will want to make the following modifications to the sample files:

  • Update each entry point to launch a unique task
  • Change all of the GUIDs listed in the XML and REG files to be specific to your scenarios. You can use guidgen.exe in Visual Studio or a website such as this to generate new GUIDs

<update date="1/20/2011"> Fixed broken link to the sample referenced in this blog post. </update>