Localizing the display name of Windows Start Menu shortcuts
I want to allow the displayed name of my application's shortcut in the start menu to appear in the user's local language, i开发者_StackOverflow社区f we have a string available for it.
I have found a question that deals with how the localized strings are referenced in storage, but while I could just muck around editing the desktop.ini
file directly, I would highly prefer a fully programmatic interface for solving this issue, i.e. an API similar to the IShellLink
and related interfaces already used to set up shortcuts. IShellFolder::SetNameOf
initially sounded like it would be able to deal with this, but on my second read of that page, it seems it will always rename the physical file.
My application already uses indirect strings for having file associations localised in the shell, this wasn't a major issue setting up since it is well enough documented, but I can't seem to find much documentation on display names of shell links.
I am using InnoSetup for my installer.
That's almost embarrassing, right after posting the question I did another search on MSDN, and found this:
SHSetLocalizedName
Sets the localized name of a file in a Shell folder.
精彩评论