tags:

views:

30

answers:

1

Hi,

I have a problem with pinning my c# application to the start menu in Windows 2008 R2. The application pins with the correct icon but the application name is missing. In effect I just get the icon displayed.

My csproj has an msbuild import that points to a custom target file to automatically generate the AssemblyInfo class. I have checked the generated AssemblyInfo file and verified that the attributes for AssemblyTitle, AssemblyProduct, and AssemblyCompany are set correctly.

Everything looks ok when I right click the .exe and look at the properties\details. All the information is displayed as expected, just not when the application is pinned.

Does anyone have any ideas as to why this might be?

Cheers,

Ben

A: 

Ok, so I have solved my problem.

I am a little hazy on the finer details but it seem that when an item is added to the startmenu a registry key is created containing metadata about the item.

Under: HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache

This regkey has a set of key/value pairs, one of which was the path to my .exe. The value was the display name of the executable. Modifying this value modifies the application name text displayed on the start menu.

Deleted this key and it was re-added correctly. It looks like when this key is initially set it takes whatever is set in the AssemblyInfo.AssemblyTitle attribute.

Problem solved.

Ben Cawley