Remove or Rearrange Default Menu Strip Items

Remove an entire strip with this registry hack. Want to Add New Menu Strips? Check out this guide to Adding Start Menu Strips!

itemicon Using some of the same techniques as in this previous article on removing entire strips from Windows 7 Media Center, we can remove individual items from any strip. This is a somewhat difficult hack to employ and is recommended only for more advanced users. System files will be changed during this hack and backups of all files should be made prior to starting.

Get the tools

We will be using the same tools as the previous hack but first make sure to create two copies of “ehres.dll” which can be found in “\Windows\ehome\”. One of these will be for editing and the other will be saved as a backup.

Once you’ve got the files, you will need a resource editor and an XML editor. The resource editor used in this guide will be Restorator. This easy to use resource editor isn’t free but does have a 30-day trial available for download. Also required is XML Notepad 2007 which is available to download free from Microsoft Download Center.

Find the strip’s XML file to edit

Next, open the “ehres.dll” file which you’ve saved for editing in Restorator. In the left pane there will be a number of folders listed, expand the “html” folder then scroll down until you locate a series of files named “SM.XXX.XML”. Locate the file which corresponds to the strip you’d like to edit, for example “SM.MOVIES.XML” contains information for the Movies strip.

Start Menu Strips in Resotrator

Extract the SM.XML file from the ehres.dll by dragging and dropping the file onto your desktop or anywhere on your hard drive. Alternatively, right-click the file and select “Extract > Extract as..” to export the XML File. It’s a good idea to create a backup of each of these files as well before editing them. Once you’ve located and extracted the XML file for the strip you’d like to edit, open the file in XML Notepad.

Edit the XML File

With the XML file open in XML Notepad, locate and expand the “home:StartMenuCategory”, “QuickLinks”, “constraints:ConstrainedList”, and “Source” folders. Each of the folders inside the “Source” folder represents an item in the default menu strip with the exception of the first folder.

Start Menu Items in Notepad 2007

Removing an item from a menu strip is simple at this point. Expand each set of folders until you locate the one with the corresponding title to the item you want to remove. The name should be fairly easy to discern from the “App” value or “EntryPoint” value. Deleting the root folder for any item will remove it permanently from the menu strip. The root folder will be the one just listed directly inside the “source” folder as shown in the image above.

To rearrange items on any given strip, locate the “Priority” setting for each strip item. These values define the order in which each item comes in the list. An item with a “Priority” of zero will be placed before an item with the “Priority” of one. Swapping these values will allow you to alter the position of any given menu item. Be careful to not have conflicting values or it may result in undesirable effects.

Rebuild ehres.dll and copy to ehome

Once you’ve made the desired changes to the menu strip’s XML file it needs to be re-added to the ehres.dll. To do this simply drag the file back into Restorator and drop it on the same file in the left pane. Alternatively, right-click the correct file name and select “Assign > Assign To..” and select your modified XML file. Once you’ve laded each of the modified XML files into Restorator, save ehres.dll.

Re-add XML to Restorator

Once you’ve got a new ehres.dll file, open Windows Explorer to “\Windows\ehome\”. You will need to have the “Take Ownership” registry fix installed, then right-click the original ehres.dll file and select “Take Ownership”. This will allow you to rename the original “ehres.dll” to “ehres.dll.original”. Once that’s been done, copy the new ehres.dll file into the folder.

Restart Media Center to check that you’re edits have been completed successfully. If Media Center should crash at this time it is most likely due to an incorrect XML file. If this is the case you should likely revert to a backed up file and try again. As long as all goes well you should have your perfectly tailored Media Center start menu.

Want more hacks like this? Subscribe to the RSS Feed or follow on Twitter for the latest updates!

Remove Media Center Start Menu Strips Via Simple Registry Settings

extras_icon After posting this rather difficult method to removing start menu strips from Windows 7 Media Center, a reader posted an alternate method that turns out to be much simpler. As long as you don’t need to remove the Movie strip this hack can be a much easier solution. Currently, however, there is no publicly known key to remove the Movie strip from Windows 7 Media Center.

This method also enables “per user” disabling of menu strips through the current user’s registry values. Alternatively, editing the local machine values will set the default visibility of strips for all users. This hack was originally posted to Mikinhosoft with details on the registry values to edit. For simplicity we’ll just edit a .reg file to add the values to the registry.

First download this registry file with the all the entries for each of the start menu strips (excluding Movies). Next open the file in notepad to edit the values of each entry. Inside you will find an entry for each menu strip, excluding Movies, which has an “OnStartMenu” value. By default each menu strip’s “OnStartMenu” value is set to true.

remove_stripts_reg

For each entry you will see an “@” value with the name of each strip, which is only used to identify the strip, changing this doesn’t change anything inside Media Center. Change the “OnStartMenu” value to “False” for any strip you don’t want to appear in your media center start menu. To reverse the change simply change the value back to “True”.

If you’d rather set the default strips for all users change each “HKEY_CURRENT_USER” to “HKEY_LOCAL_MACHINE”. Changing all of these values to local machine will set the default start menu strips across all user accounts.

After you’ve completed editing the .reg file save and then double-click to add the values into your registry. When prompted, allow the registry entries to be updated. This proves to be a much easier method to edit your start menu strips in Media Center. Again, thanks to Mikinhosoft for posting this information and creating the registry file for this hack.

Keep up to date on the latest hacks and tricks for Media Center by subscribing to the RSS Feed or following on Twitter!

Removing Start Menu Strips from Windows 7 Media Center

Also, Try this alternative method which makes removing entire start menu strips even easier!

Media Cetner Sports Strip
So you read the guide on Adding New Start Menu Strips and now you want to remove that Movies strip and replace it with a Media Browser strip. Maybe you just aren’t that into sports and want to get rid of the Sports strip. Either way, there's a hack to get rid of those unwanted start menu strips.

Get the Tools

Get the Tools to Hack Media Center
First we need a couple of tools to get us through this hack. A resource editor is required, Restorator is my personal favorite for it’s ease of use and that’s what will be used in this guide. Unfortunately, Restorator isn’t free but does have a trial version available. It’s well worth the price if you plan on doing a lot of Media Center hacking though.

While the XML files we’ll be working with can be edited in something such as notepad Microsoft has a free program that will make this a lot easier. Download XML Notepad 2007 free from Microsoft Download. This free little program is extremely handy for editing XML documents, which are the basis of much of Media Center’s layout.

Get the Files

Now we need to get the files to work with. You will need to get a copy of “ehres.dll” from “\Windows\ehome”. Also, be sure to have the “Take Ownership” registry fix installed as it will be needed later on. Make two copies of “ehres.dll”, one should be a backup kept in a safe place the other will be for editing.

Startmenu XML in Restorator

Open your “ehres.dll” for editing in Restorator. There should be a number of folders listed on the left hand pane. Expand the html folder and scroll down until you find “startmenu.xml”. Click the file and drag it to your desktop or anywhere on your hard disk for editing. Now that you have a copy of “startmenu.xml” open Notepad 2007 and load the file.

Edit Startmenu.XML

Once you have “Startmenu.xml” opened in Notepad 2007 you will see a couple of folders ad some xmlns declarations in the left hand pane.  It will most likely be quite intimidating to anyone not familiar with XML but we can ignore these for now and just expand “home:StartMenuData”. Then expand the next three folders inside, “Categories”, “constraints:ConstrainedList” and “Source”. Now you should see a large list of folders.

Startmenu XML in XML Notepad 2007

We aren’t concerned with the first twenty of these folders as they are placeholders for the extra programs strip. After these first placeholder folders you will notice a couple of folders marked “constraints:ConstrainedItem”. These are the first few start menu strips, pictures and folders. Expand these folders as well as the “Value” and “home:StartMenuCategory” folders and you will see an entry marked “StartMenuCategory”. On the right hand you will see “global://Pictures:PicturesSMC”, this tells us that this is the entry for the Pictures strip.

Remove the start menu strip in XML

Expanding each of these folders you will see entries for each of the available start menu strips, including Now Playing, Movies, Music, etc. To remove any of these strips simply select the main “home:ConstrainedCategory” folder for the strip and delete it. Then save the “Startmenu.xml” file.

Update ehres.dll

Now that you’ve edited “Startmenu.xml” and saved it the time has come to reapply it to the “ehres.dll” file. Make sure you’ve got Restorator open and your “ehres.dll” file for editing is loading. Either drag the edited “startmenu.xml” onto the “startmenu.xml” listing in Restorator or right-click the file in Restorator and select “Assign > Assign to..” and choose your edited xml file from the dialog. Once the new xml file has been added to the “ehres.dll” file save the .dll with Restorator.

Save the dll in Restorator

This should create two files with the default settings, a backup and a new “ehres.dll”. Copy the new “ehres.dll” into the “\Windows\ehome\” directory. To successfully copy the file you will need to have the “Take Ownership” registry fix installed. With the fix installed, right-click the original “ehres.dll” in the “ehome” directory and select “Take Ownership”. You should now be able to copy over the original file. Be sure you’ve got a backup before proceeding though!

Check it out in Media Center

Once you’ve got your “ehres.dll” replaced, relaunch Media Center to check that the start strip you wanted to remove is gone. That should be all there is to it. If Media Center crashes upon starting or you’ve removed the wrong start menu strip by mistake replace your “ehres.dll” with the backup you created. Then you’ll have a fresh start to try again. A crash is most likely caused by an incorrect XML edit.

For even more tips on hacking your Windows 7 Media Center be sure to subscribe to the Hack7MC RSS Feed or follow on Twitter for the latest!

Creating New Start Menu Strips

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 AppId, Title, TimeStamp and Description.

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!

Hack7MC Has Moved!

Hack7MC has left Blogspot for a new home. Following the original address @ http://www.hack7mc.com will take you to the new home page.