Pinned Start Menu Items



I'm trying to pin a program to the start menu for all users in my
organization. Is there a way to do this with Group Policy or some other way?


Mike said:
I'm trying to pin a program to the start menu for all users in my
organization. Is there a way to do this with Group Policy or some other way?

Hey, Mike... this is not necessarily an easy thing to do. Back when I
figured this out, I wrote up a detailed (albeit long!) explanation of how to
take over the pinned items area on the Windows XP machines on your network.
Since you mention Group Policy, I assume you are running Windows 2000 server
or greater, so the article should help you. The example below pretty much
outlines a *total* takeover of the start menu, it is possible to just take
over the pinned items area and leave other areas accesible to the user by
ignoring some of the suggested Group Policy settings...

Good Luck,


How To: Enforce a custom "pinned" list on start menu across network

Since it took me a while to get this working, I thought I'd post it for the
benefit of others. The information in this article applies to the XP-style
start menu on Windows XP client computers in a Windows 2000 or 2003 server

If you are using roaming profiles and Windows XP, you may have noticed that
user’s start menus roam with them --- sort of. We’ve encountered some
problems and inconsistencies, especially with the “pinned†programs area, so
we thought we’d try using folder redirection on the start menu too.

If you have dealt with this issue at all then you probably know that you are
able to use Group Policy to redirect the start menu folder to point to a
network share. However-- shortcuts in the root of that folder will show up
at the top of the menu only if you use the "classic" type start menu-- if you
want the slick looking XP-style start menu, it puts those shortcuts under the
"All Programs" menu and reserves the left side of the menu for "pinned
programs" and the MFU (Most Frequently Used) list.

Personally, I like the look and feel of the XP start menu, and most of the
users on this network have gotten used to it, so we wanted to see if we could
take control of the left side and make it static.

So we need to a) turn off user control of the pinned items area, b) disable
the creation of MFU shortcuts and c) put a custom list of shortcuts in the
"pinned items" area when a user logs in. Also—we want to be able to update
this list from a central location and have changes propagate to users when
they log in. In this particular case, we accomplish this through the use of
login scripts.

I am going to assume that you know a little about Group Policy and Folder
Redirection... if not, check these out and return here:

In this example, the applications are installed in the same location on each
client machine and the desired outcome is to have a master list of every
program available under “All Programs†and a subset of that list, tailored
for each user type appearing on the left side of the start menu. This way,
“All Programs†actually *means* all programs, and co-workers or
administrators can still access their shortcuts, even if a different user is
logged on. If you need completely different menus (and submenus) for
different groups of users, it’s best to put the different user types into
separate OU’s (Organizational Units) and repeat the following process for
each OU (use different directory and file names for each).

Step 1: Copy the start menu shortcuts and folders from a user who has all
the shortcuts you need to a shared folder (accessible by all) on the network.
The easiest way to find the start menu folder is to login as that user on
the XP client, right-click on the start button and select "explore". You may
also need to check in "Documents and Settings\All Users\Start Menu" for
common shortcuts. Put all of the shortcuts you want on your custom start
menu in the root of the shared folder, along with a "Programs" folder (if you
want any additional shortcuts or folders to be available when the user clicks
on "all programs" you put them in the programs folder). For the purposes of
this article we'll use \\server\MasterMenu$ as our path to the share.
Remember, this is a master list. The subsets for different user types will
be created later. When you’ve completed the entire process, you probably
want to make the network share READ ONLY for most users so they cannot add
to, rename or otherwise mess up your custom menu. (A $ added to the end of a
share name when you create it makes it invisible to the casual browser)

Step 2: Create a GPO (Group Policy Object) called StartMenu, right click on
it, select “Edit†and navigate to "User Configuration/Windows Settings/Folder
Redirection". Right-Click on “Start Menu†and select "properties". Use
basic redirection to point all users to the same folder (we’ll tackle the
issue of multiple user types elsewhere) and under Target Folder Location
select "Redirect to the following location". Click on Browse and find
\\server\MasterMenu$, or whatever you named the share from Step 1. Click OK
twice to save the settings, then navigate to "User
Configuration/Administrative Templates/Start Menu and Taskbar". Enable the
following policies: “Remove common program groups from Start Menuâ€, “Remove
frequent programs list from the Start Menu†and “Remove user's folders from
the Start Menuâ€. You may also choose to remove items like My Music, My
Pictures, Run Menu, etc.

On this particular network, we have all users in the same OU and we use
different login scripts (traditional, specified in the user’s profile tab in
the active directory users and computers snap-in on the server) to affect
what they see on their menus. Because the login script is loading the menu,
we also need to enable “Always wait for the network at computer startup and
logon†located under “Computer Configuration\Administrative
Templates\System\Logonâ€. Make sure the GPO is linked and enabled for the OU
(organizational unit) you are working with and that the proper users are
members of the OU. On our copy of 2000 server, I could not drag and drop
users or computers into the OU’s I created. I had to right-click on them and
select “Moveâ€.

In addition, you need to enable one policy for the computers, so if you
haven’t already, create an OU (in the Active Directory Users and Computers
snap-in) that you can move the computers into. Once they are members of the
OU, right click on the OU and select “propertiesâ€. Click on the “Group
Policy†tab and click on “New†to create a GPO for the computers and link it
to the computers’ OU (if you create the policy from the group policy snap-in,
the proper policies will not show up!) In this case, we have “XP Desktop
Policy†linked to the computers’ OU. Edit the GPO and navigate to “Computer
Configuration\Administrative Templates\System\Logon†and enable a policy
called “Run logon scripts synchronouslyâ€. Again, make sure the GPO is linked
and enabled for the OU in question.

We happen to be running Small Business Server, and this last policy caused
our login scripts to hang on the sbsclnt.exe line, so if you are running
Small Business Server and call sbsclnt.exe in your login scripts, you may
need to remove that line from the login scripts and create a separate batch
file (we called ours sbsclnt.bat) containing the removed line. Drop that
batch file into \\server\MasterMenu$\Programs\Startup and the startup folders
of any other shared start menu folders you’ve created. Apparently
sbsclnt.exe needs to have explorer loaded before it runs.

Step 3: On a client machine, login as a user in the OU where the StartMenu
GPO is enabled. Make sure that user has full access to the network share. If
the start menu doesn't seem to match up with what you created, you may need
to go to a command prompt and enter "gpupdate /force" and then logoff and
login again.

If your client machine is Windows 2k, or you have set the XP start menu to
"classic style" you can STOP HERE.

Step 4: Now comes the tricky part. On a Windows XP machine with the
newer-style start menu, the shortcuts you want should be showing up under
“All Programsâ€, if not, go back and check that you have followed steps 1-3
carefully. Next, delete each item that is already on the pinned programs
section by right-clicking on it and selecting "remove from this list". These
shortcuts are probably all local, so you MUST delete them all before
proceeding. Once the list is empty, right click on each of the shortcuts you
have under All Programs, and select "Pin to Start Menu" – you may do this
from explorer or from the start menu. It seems that because the shortcuts
are on a network share, you cannot change the order once they've been pinned,
as you normally could, so it’s important to PIN THEM IN THE ORDER YOU WANT
THEM TO APPEAR. If you make a mistake just remove the incorrect items and try
again. You may now rename those shortcuts to anything you like. At this
point you should have the menu looking the way you want it. Do not proceed
until it’s perfect.

Step 5: If everything looks good, run REGEDIT and export the following key
to a file on a network share:
-- For this example let's call the file "MasterMenu.reg". DO NOT put this
file in the \\server\MasterMenu$ directory... find another place for it. In
this example we’ll copy it to \\server\menu$\

If you open the .reg file in notepad and look at the data, you'll understand
why there is no practical way to create a custom "pinned" menu other than
manually creating one and replicating it as outlined in this article.
Microsoft has purposely done this so that spyware programs and other poorly
written software cannot automatically force themselves onto your favorite
programs area. In the end, this feature also helps our custom menu remain
unadulterated. I also recommend you add the following lines to the .reg
file, so there is no blank space beneath your custom menu:

Step 6: Put the following line in the user or group’s login script:
regedit /s \\server\menu$\MasterMenu.reg
(of course, replace path\filename as needed)
(also, if it contains spaces, put the “path name\file name†in quotes)

If you don't use login scripts (or don’t want to) you can also put a batch
file in the programs/startup folder of the network share where the start menu
resides but this may require the user to logoff/logon again at least once
when menu changes are made before the changes are reflected on their start

Step 7: To create additional subsets of your master menu, login as a user
who is set up with the new master menu, remove the shortcuts you don’t want
(from the pinned list on the left only!!) and then export the registry key
from step 5 to a new file. We called ours “BasicMenu.reg†as we just have
two types of users and we put the file in the same menu$ share. Then, you
just need to specify a different login script for those users, where you
change the regedit line to reflect the proper menu file, such as:
regedit /s \\server\menu$\BasicMenu.reg

That’s it! You should now have EXACTLY what you want appearing on the XP
start menus, with no room for changes except for those you choose to
purposely make.

Keep in mind that the pinned items are not really shortcuts, they are
actually direct links to the shortcut files you have stored on the network
share. If you rename them from a user’s start menu, they will also be
renamed on the network share, and then they will no longer match the settings
in your registry file, so I’ll mention again that it’s a good idea to limit
write access to the \\server\MasterMenu$ folder. Doing so also means that if
a user with limited access tries to install something, they will get errors
when the installer tries to add shortcuts to the start menu. If you want to
avoid those errors from happening you could enable write access to SUBFOLDERS
only of the \\server\MasterMenu$\Programs folder, although if you do this,
I’d recommend disabling write access to the startup folder for security

Your Comments and Questions are Welcome. Please post as a reply in the

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question