How to control the ordering of custom strips in Windows Media Center for Windows Vista

I have previously written blog posts describing how to add up to 2 custom strips to the Windows Media Center Start menu in Windows Vista with up to 5 tiles each, and how to specify an exact sorting order for the tiles in a custom strip in the Start menu.

One interesting behavior that was not covered in those previous blog posts is how to specify an exact order for the 2 custom strips themselves.  By default, when launching Windows Media Center for Windows Vista, the first custom strip will be visible in the Start menu without requiring the user to scroll.  This means that the second custom strip will require the user to take action to scroll down in the Start menu, which can make discoverability of the second custom strip more difficult for the user.

The following registry value is used to sort the custom strips on the Windows Media Center Start menu:

  • Registry root: HKEY_LOCAL_MACHINE
  • Key name: SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Start Menu\Applications\<application GUID>
  • Value name: TimeStamp
  • Value data type: REG_DWORD
  • Value data: The number of seconds that have elapsed since midnight on January 1, 2000 C.E.

Windows Media Center selects the newest application that is registered to appear on the Start menu and displays the custom strip for it first.  That means you should set a higher TimeStamp value for the application that you want to appear first on the Start menu on your system.

In order to demonstrate this concept, I have updated the Start menu customization example that I previously posted to include TimeStamp values in both TestApp1.reg and TestApp2.reg.  If you open these registry files in a text editor such as Notepad, you will see that the TimeStamp value equals dword:0c7e59de in TestApp1.reg, and the TimeStamp value equals dword:0c7e59dd in TestApp2.reg.  As a result, the value in TestApp1.reg represents a larger number of elapsed seconds since midnight on January 1, 2000 C.E.  Therefore, TestApp1 is newer from Windows Media Center's perspective, so that custom strip will be displayed first on the Start menu.

If the custom strips have equal TimeStamp values or undefined TimeStamp values, the order that the custom strips will appear on the Windows Media Center Start menu will not be guaranteed.  Therefore, if you want to enforce an ordering, you must define TimeStamp values for each custom strip.