Hacking Windows 7 Media Center

Creating New Start Menu Strips

by Michael Healy @ 7:15 am on March 3rd, 2009 in programs, start menu strips, windows 7 with 21 Comments and Permalink

Currently, in Windows 7 Media Center, there is no way to edit the default start menu items. In previous versions you were able to add items to the existing strips using a third party program, which made sense when adding a movie or TV plug-in. Unfortunately, Microsoft has gone to some lengths to disable this ability in 7MC. It is still possible to create a couple of custom strips in the start menu though.

New Menu Strip in Media Center

The first step to getting your new menu strip is to choose what programs you want to be on it. These programs have to be already entered into the Media Center’s Extra Programs. You can find a guide on adding new entries to the Extra Programs using Media Center Launcher and Configurator right here. Once all the programs you want to launch from your new bar are installed open a registry editor (start > “regedit” > enter).

Launch RegEdit and Locate "Entry Points"

Once inside navigate to the following location in the left hand tree view:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Extensibility\Entry Points]

Listed under this key will be a number of id numbers. Each program inside Media Center will have a couple of unique keys to identify that particular program. To find the program(s) you want to add to the menu go through each entry and find the id that matches the title of the program. The title should be listed on the right hand side under an entry named “title”.

Create and Name the New Menu Strip

Once you’ve found the correct program entry select AppId, right-click and select “Modify..”. Now copy the AppId from the text box and close the box without altering anything. Now locate the following registry location:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Start Menu\Applications]

Then right-click and select “New > Key”. Paste the AppId we copied earlier into the Key name. Next, in the right hand window right-click and create three new strings: “Category, OnStartMenu and Title”. Also create one DWORD named “TimeStamp”.

Add New Entry

Right-click to modify each value, setting Category to the name of your new strip and Title to the name to display in Media Center. OnStartMenu should be set to “True” and TimeStamp is a number value determining the position of the new strip in Media Center.

Add New Programs to the Menu Strip

Once this new strip has been created we need to add entries to it. Locate the following key:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Extensibility\Categories]

Right-click the key and create a new key under “Categories” with the same name as the Category you set in the last steps. Now go back to the proper key under “Entry Points” as we did above and copy the correct key (not the AppId, this time get the key by selecting Rename and copying from the text box). Then create a new key under your new category with the same name as the program’s Entry Point Id number. I know it sounds confusing, take a look at the image below for an example.

Find the Entry Point Id

Set the Program Information

Under this new key we need to create five new string values: “AppId, Context, Description, Enabled and Title”. Also, create one Dword entry called “TimeStamp. Copy the AppId from the program’s Entry Points listing (AppId value in the right pane) then fill in the Title, Description and Context with any values you want. Title and Description will appear in Media Center while context seems to go unused at this time. The “Enabled” string should be set to “True” so that the item appears in the menu strip.

TimeStamp will control the position of each item in the menu, for example one (1) would be listed before two (2) in the strip. To enter Dword values as a regular number select the “Decimal” option on the right of the dialog.

Then Repeat!

To add more entries to your new menu strip simply add a new key under the category for each program you want to add and repeat the steps above. Each program should have a different Entry Point ID, Title, TimeStamp and Description. Update: Each entry should use the same AppId but different Entry Point Id. So create a key with the entry point value and a string inside with the same AppId as the first menu strip item.

Create another new item

If your new menu strip doesn’t appear double-check the Entry Point and App Id numbers for each entry. An improper number in any of these will cause the menu strip to not be shown.

Hopefully someone can create a little program to allow this to be done without all the registry mucking but until then this will do the job. If you do create a program be sure to drop a note in the comments so we can let the rest of the community know!

Stay tuned to Hack7MC for upcoming reviews on plug-ins to add to your new menu strip!

21 Comments


Anonymous
Comment #170 from Anonymous [Reply]

Is it possible to create multiple entry points for a program, like Media Browser? Say I want to create an entry point for each of my media folders, like:

Media Browser
[Movies] [TV Shows] etc.

Is this possible? How would I go about doing this?

Comment left March 3, 2009 at 6:42 pm with Permalink

MHealy
Comment #171 from MHealy [Reply]

It may be possible to create multiple entry points for a single plugin but it’s dependant on the plug-in itself. For example, the Heatwave weather plugin allows for multiple entry points, i believe by using the Context string to define what to show.

I’m not sure if Media Browser allows for this though. I’ll look into it and post something here if I can find anything.

Comment left March 3, 2009 at 7:19 pm with Permalink

Anonymous
Comment #172 from Anonymous [Reply]

Awesome, thanks a bunch man!

Comment left March 3, 2009 at 7:38 pm with Permalink

David
Comment #168 from David [Reply]

Whats the maximum number of strips you can add ?

Comment left March 17, 2009 at 3:43 pm with Permalink

Anonymous
Comment #169 from Anonymous [Reply]

Based on a file in ehres.dll, 20 “OEM” strips can be created. That seems to be only a default tho. It seems that value could be increased if one desired.

Comment left March 22, 2009 at 5:12 pm with Permalink

Chris
Comment #174 from Chris [Reply]

Hmm… I attempted the exact steps you oulined above, but the new MC Panel is not showing up. When I navigated to [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Start Menu\Applications], I had to create the Applications registry key. I am running Windows 7 Build 7068 x64, so I don’t know if this is a bug in the build I am using. Also, can you please provide bigger screen shots for those of us on large monitors.

Comment left April 6, 2009 at 5:43 pm with Permalink
Comment #175 from Michael Healy [Reply]

I haven’t tried this hack on build 7068. I’ll mostly likely wait until an RC is released to double check on versions past 7000 which I’ve switched back to after numerous problems with later builds.

The screenshots seem to have been messed up in the recent move from blogger, I’ll try to get them fixed. (edit: There you go)

Comment left April 6, 2009 at 6:17 pm with Permalink

Sam
Comment #313 from Sam [Reply]

How would you add a program to an existing menu strip like TV or Movies?

Comment left April 10, 2009 at 1:55 am with Permalink
Comment #316 from mhealy [Reply]

Microsoft has done a lot to lock users out of being able to add items to the default menu strips for whatever reason. I haven’t yet found a way to successfully add plug-ins and such to the default strips. You may want to have a look at this guide on removing items but I haven’t figured out adding new items, only removing defaults.

Comment left April 10, 2009 at 9:22 am with Permalink

frenxy382
Comment #431 from frenxy382 [Reply]

managed to create a menu strip, and added an app into that. However, i can’t add a 2nd one into my strip.
I’m pretty sure that i’m doing this right though as I’ve successfully done it on one machine (Windows 7 7022), but it just won’t work on Windows 7 7077. 1 app only.
any ideas anyone?

Comment left April 24, 2009 at 4:31 am with Permalink
@Reply #433 from MichaelHealy [Reply]

That’s a strange one, I haven’t tried this on 7077 personally as I’m waiting for RC but I don’t see why it would be limited to 1 item only. I would double or triple check that the appID and CLSid values are correct for the second menu item. Also, make sure the “Enabled” value is set to “True”. Beyond that I’m not sure what the trouble could be.

Comment left April 24, 2009 at 7:32 am with Permalink

frenxy382
Comment #434 from frenxy382 [Reply]

yeah…i checked (double and triple checked!).
also, if i set the live one to false, and the missing one to True, then the whole strip disappears.
It’s almost as if the Start Menu entry is ignoring my category completely.
If i create two start menu apps, then they will both appear in their own seperate strips (1 in each)..that’s the only way that so far i can get both on the screen…unless of course i go via the Extra’s menu.

all very odd.

Comment left April 24, 2009 at 7:46 am with Permalink
@Reply #436 from MichaelHealy [Reply]

That is quite strange. You said you got it to work correctly on another machine, was that one build 7077 as well or another build?

Comment left April 24, 2009 at 8:00 am with Permalink

frenxy382
Comment #438 from frenxy382 [Reply]

the other build was 7022 and that worked (no problem whatsoever). 7077 was a fresh install on a 2nd pc and just isn’t doing it. I’ve started from scratch again in the registry. I even exported the keys etc. from the 7022 pc onto this one, just to ensure i haven’t mis-typed..still nothing.

Comment left April 24, 2009 at 8:15 am with Permalink
Comment #707 from Mike Brown [Reply]

Yeah I’m seeing the same thing in the RC, 1 item per strip.

Comment left May 5, 2009 at 6:17 pm with Permalink
Comment #844 from Michael Healy [Reply]

I found the problem. Apparently each item in the menu strip has to have the correct Entry Point Id for that program but the same AppId as the first entry. It doesn’t make much sense to me but that’s the way it works.

Comment left May 8, 2009 at 10:58 am with Permalink

Sloppymcnubble
Comment #1794 from Sloppymcnubble [Reply]

This is great man, thanks for doing everything you do.

Question: Do you know of a way to add the “Intetnet TV
” and msnbc items to a custom strip? Im trying to create an internet tv strip, already have hulu and secondrun.tv in there, but want to add the MS items.

Comment left June 22, 2009 at 11:59 pm with Permalink
Comment #2117 from Nick [Reply]

Hi, here is the wizard app that can do this.
http://www.dotnetgear.com/blog/?p=5

Comment left July 14, 2009 at 3:19 am with Permalink

Leave A Comment

Post Anonymously, Fill in your details or Use one of the Social Networks below to login and post a comment!