Aaron Stebner's WebLog

Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio

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

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

  • Comments 22

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>

 

  • Aaron Stebner comes through again with a tip on how to add items to MCE's &quot;strips&quot; and &quot;tiles&quot; (the new...
  • PingBack from http://mediacenter.thepodcastnetwork.com/2006/08/10/the-media-center-show-70-home-automation/
  • I have previously posted topics about creating custom strips on the Windows Media Center Start menu in...
  • I have previously written blog posts describing how to add up to 2 custom strips to the Windows Media

  • This article will serve as a central repository for topics that I have written about Windows Media Center

  • Question: I would like to add a new strip to the Windows Vista Media Center start menu. I have followed

  • Great article! I have created a custom strip called "Favorites" and would like to create "shortcut" tiles to the strip, like recorded TV, My movies, etc.

    Is there a way to create shortcut tiles?

  • Hi Navjo - Creating "shortcut" tiles that link to other strips like you describe is not supported.  However, the Media Center start menu is relatively small so it should be easy enough for users to just scroll up and down to get to the other Media Center strips.

  • Hi and thanks for the info.

    I was wondering if there was an easy way to add a remote control direct link to a new tile?

    Exmaple: on the Microsoft remote control - you have buttons that start the Recorded TV, Live TV, Music, Videos and Pictures.

    I would like to be able to have buttons for the additional strips so I can start an app without the need to scroll.

    I hope this is clear enough.

    Thanks,

    Eytan

  • Hi Eytan - I'm not positive if this is a supported scenario or not, and it is not something I've had experience with in the past.  I don't see anything about this exact scenario in the Media Center SDK documentation but I might be missing something.  I'd suggest posting a question on the Media Center Sandbox discussion forum (http://discuss.mediacentersandbox.com) to see if someone in the Media Center development community can help advise you about this scenario.

  • PingBack from http://www.mh-lounge.de/?p=12

  • I got the menu system working but when I try to change the context to launch a different app I get a invalid application message even through I can launch the same app from the program library.  Anybody else see this?

  • Hi Sharrisct25 - I'm not sure what you mean by "context" in your question.  What exactly are you changing in your registry and/or in your registration XML files?

    Also, please note that the information in this blog post has been enhanced since the time I originally wrote it, and it is now included as a sample with documentation in the Media Center SDK (which can be downloaded from http://www.microsoft.com/downloads/details.aspx?FamilyID=A43EA0B7-B85F-4612-AA08-3BF128C5873E).  You can find the sample in the directory C:\Program Files\Microsoft SDKs\Windows Media Center\v5.0\Samples\Register Application after installing the SDK.

    There is also a set of forums specifically focused on Media Center development that might be helpful to you as you work on your Media Center application.  You can find them at http://discuss.mediacentersandbox.com/forums/default.aspx.

  • That should help me get this working.  Thank you.

  • When i tried to add two more strips to the startmenu , i met a question that two different strips have same tlies.For example,strip one has tile A and tile B,strip No.2 has tile C and tile D,but when i added them to the menu together, it appeared as each strip had tile A,B,C and D. Can you help me to settle this question ? Thank you very much!

Page 1 of 2 (22 items) 12
Leave a Comment
  • Please add 3 and 2 and type the answer here:
  • Post